tern.java icon indicating copy to clipboard operation
tern.java copied to clipboard

I get a TernException since using Eclipse Neon

Open wolfgang-ch opened this issue 8 years ago • 5 comments

This exception do not appear immediately when starting js editing but sometimes.

tern.TernException: Connection reset
    at tern.server.DefaultResponseHandler.getData(DefaultResponseHandler.java:54)
    at tern.server.protocol.TernResultsProcessorsFactory.makeRequestAndProcess(TernResultsProcessorsFactory.java:46)
    at tern.eclipse.ide.internal.core.resources.IDETernServerAsyncReqProcessor.processRequest(IDETernServerAsyncReqProcessor.java:50)
    at tern.server.AbstractTernServer.request(AbstractTernServer.java:172)
    at tern.resources.TernProject.request(TernProject.java:625)
    at tern.resources.TernProject.request(TernProject.java:616)
    at tern.eclipse.ide.internal.ui.views.TernOutlineView.loadOutline(TernOutlineView.java:54)
    at tern.eclipse.ide.ui.views.RefreshOutlineJob.run(RefreshOutlineJob.java:80)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Caused by: java.net.SocketException: Connection reset
    at java.net.SocketInputStream.read(SocketInputStream.java:220)
    at java.net.SocketInputStream.read(SocketInputStream.java:152)
    at org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:160)
    at org.apache.http.impl.io.SocketInputBuffer.fillBuffer(SocketInputBuffer.java:84)
    at org.apache.http.impl.io.AbstractSessionInputBuffer.readLine(AbstractSessionInputBuffer.java:273)
    at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:140)
    at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:57)
    at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:260)
    at org.apache.http.impl.AbstractHttpClientConnection.receiveResponseHeader(AbstractHttpClientConnection.java:283)
    at org.apache.http.impl.conn.DefaultClientConnection.receiveResponseHeader(DefaultClientConnection.java:251)
    at org.apache.http.impl.conn.ManagedClientConnectionImpl.receiveResponseHeader(ManagedClientConnectionImpl.java:197)
    at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:271)
    at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:123)
    at org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:685)
    at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:487)
    at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:863)
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:106)
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:57)
    at tern.server.nodejs.NodejsTernHelper.makeRequest(NodejsTernHelper.java:82)
    at tern.server.nodejs.NodejsTernServer.makeRequest(NodejsTernServer.java:238)
    at tern.server.nodejs.NodejsTernServer.request(NodejsTernServer.java:204)
    at tern.server.protocol.TernResultsProcessorsFactory.makeRequestAndProcess(TernResultsProcessorsFactory.java:45)
    ... 7 more

wolfgang-ch avatar Jun 30 '16 08:06 wolfgang-ch

I'm not sure that this issue is just for neon. Please give me more information, I can do nothing with this info.

Thanks!

angelozerr avatar Jul 02 '16 18:07 angelozerr

I have exactly the same issue. Sometimes while editing or after saving Javascript files I get this error message. But I had this issue also in Eclipse mars before upgrading to Neon (not really upgraded, but installed a new fresh copy).

Along with the stacktrace @wolfgang-ch posted, I also see this stacktrace in my environment. What further information do you need?

tern.TernException: Connection reset
    at tern.eclipse.ide.internal.core.resources.IDETernFileUploader$1.onError(IDETernFileUploader.java:133)
    at tern.server.nodejs.NodejsTernServer.request(NodejsTernServer.java:207)
    at tern.eclipse.ide.internal.core.resources.IDETernFileUploader.run(IDETernFileUploader.java:124)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Caused by: java.net.SocketException: Connection reset
    at java.net.SocketInputStream.read(Unknown Source)
    at java.net.SocketInputStream.read(Unknown Source)
    at org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:160)
    at org.apache.http.impl.io.SocketInputBuffer.fillBuffer(SocketInputBuffer.java:84)
    at org.apache.http.impl.io.AbstractSessionInputBuffer.readLine(AbstractSessionInputBuffer.java:273)
    at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:140)
    at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:57)
    at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:260)
    at org.apache.http.impl.AbstractHttpClientConnection.receiveResponseHeader(AbstractHttpClientConnection.java:283)
    at org.apache.http.impl.conn.DefaultClientConnection.receiveResponseHeader(DefaultClientConnection.java:251)
    at org.apache.http.impl.conn.ManagedClientConnectionImpl.receiveResponseHeader(ManagedClientConnectionImpl.java:197)
    at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:271)
    at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:123)
    at org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:685)
    at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:487)
    at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:863)
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:106)
    at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:57)
    at tern.server.nodejs.NodejsTernHelper.makeRequest(NodejsTernHelper.java:82)
    at tern.server.nodejs.NodejsTernServer.makeRequest(NodejsTernServer.java:238)
    at tern.server.nodejs.NodejsTernServer.request(NodejsTernServer.java:204)
    ... 2 more

And not sure if it helps, but another stacktrace I got sometimes:

tern.TernException: Server has been disposed
    at tern.server.nodejs.NodejsTernServer.makeRequest(NodejsTernServer.java:216)
    at tern.server.nodejs.NodejsTernServer.request(NodejsTernServer.java:204)
    at tern.server.protocol.TernResultsProcessorsFactory.makeRequestAndProcess(TernResultsProcessorsFactory.java:45)
    at tern.server.SynchronousRequestProcessor.processRequest(SynchronousRequestProcessor.java:36)
    at tern.server.AbstractTernServer.request(AbstractTernServer.java:172)
    at tern.resources.TernProject.request(TernProject.java:625)
    at tern.resources.TernProject.request(TernProject.java:616)
    at tern.eclipse.ide.internal.ui.views.TernOutlineView.loadOutline(TernOutlineView.java:54)
    at tern.eclipse.ide.ui.views.RefreshOutlineJob.run(RefreshOutlineJob.java:80)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

fkranenburg avatar Sep 16 '16 08:09 fkranenburg

Please share your project.

angelozerr avatar Sep 16 '16 08:09 angelozerr

We have a user that hits the same issue: http://forums.zend.com/viewtopic.php?f=59&t=132628

The only relevant error I find in the log is this one:

!ENTRY tern.eclipse.ide.core 4 0 2017-05-19 08:34:00.951
!MESSAGE Connection reset
!STACK 0
tern.TernException: Connection reset
	at tern.eclipse.ide.internal.core.resources.IDETernFileUploader$1.onError(IDETernFileUploader.java:133)
	at tern.server.nodejs.NodejsTernServer.request(NodejsTernServer.java:155)
	at tern.eclipse.ide.internal.core.resources.IDETernFileUploader.run(IDETernFileUploader.java:124)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Caused by: java.net.SocketException: Connection reset
	at java.net.SocketInputStream.read(SocketInputStream.java:209)
	at java.net.SocketInputStream.read(SocketInputStream.java:141)
	at org.apache.http.impl.io.AbstractSessionInputBuffer.fillBuffer(AbstractSessionInputBuffer.java:160)
	at org.apache.http.impl.io.SocketInputBuffer.fillBuffer(SocketInputBuffer.java:84)
	at org.apache.http.impl.io.AbstractSessionInputBuffer.readLine(AbstractSessionInputBuffer.java:273)
	at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:140)
	at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:57)
	at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:260)
	at org.apache.http.impl.AbstractHttpClientConnection.receiveResponseHeader(AbstractHttpClientConnection.java:283)
	at org.apache.http.impl.conn.DefaultClientConnection.receiveResponseHeader(DefaultClientConnection.java:251)
	at org.apache.http.impl.conn.ManagedClientConnectionImpl.receiveResponseHeader(ManagedClientConnectionImpl.java:197)
	at org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:271)
	at org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:123)
	at org.apache.http.impl.client.DefaultRequestDirector.tryExecute(DefaultRequestDirector.java:685)
	at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:487)
	at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:863)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:106)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:57)
	at tern.server.nodejs.NodejsTernHelper.makeRequest(NodejsTernHelper.java:74)
	at tern.server.nodejs.NodejsTernServer.makeRequest(NodejsTernServer.java:187)
	at tern.server.nodejs.NodejsTernServer.request(NodejsTernServer.java:151)
	... 2 more

Unfortunately, I myself don't reproduce the issue.

Could it be that the tern server process crashes (out of memory?). Is there any log file that can be analyzed? Are there any memory settings that can be tuned?

kaloyan-raev avatar Jun 07 '17 06:06 kaloyan-raev

Whithout having a project which reproduces the problem, it's hard to give an answer. I suspect that there are too many files to load but not sure.

Please note Today, I'm very busy today with https://github.com/angelozerr/typescript.java which provides a better JavaScript/TypeScript editor by using tsserver and TextMate for syntax coloration.

angelozerr avatar Jun 07 '17 06:06 angelozerr