Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tern Content Assist Hangs and Out of Memory #424

Open
KnightYoshi opened this issue Jun 9, 2016 · 4 comments
Open

Tern Content Assist Hangs and Out of Memory #424

KnightYoshi opened this issue Jun 9, 2016 · 4 comments

Comments

@KnightYoshi
Copy link

This started happening just yesterday for no reason (nothing in Eclipse was changed).
Tern's Content Assist times out every time. It also has issues synchronizing script resources, it gets to around 93% and then just hangs there until it runs out of memory. After this started happening I checked for and updated Tern to the latest release, it's still having issues.

Here's the stack trace for when it runs out of memory.

FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory
<--- JS stacktrace --->

==== JS stack trace =========================================

Security context: 0x1d4f59cb4629 <JS Object>
    1: /* anonymous */(aka /* anonymous */) [/Applications/Eclipse.app/Contents/Eclipse/plugins/ternjs_1.2.0.201605160910/node_modules/tern/lib/infer.js:904] [pc=0x33bc90caf7ee] (this=0x1d4f59c041b9 <undefined>,type=0x3673918f8c1 <JS Object>,target=0x2766c444eae1 <JS Object>,weight=0x1d4f59c041b9 <undefined>)
    2: /* anonymous */(aka /* anonymous */) [/Applications/Eclipse.app/Contents/Eclips...


Tern error# with 250629ms: 

Tern error#type with 228676ms: 
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:82)
    at tern.server.nodejs.NodejsTernServer.makeRequest(NodejsTernServer.java:238)
    at tern.server.nodejs.NodejsTernServer.request(NodejsTernServer.java:204)
    at tern.eclipse.ide.internal.core.resources.IDETernFileUploader.run(IDETernFileUploader.java:124)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

-----------------------------------

Tern error#definition with 158441ms: 
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: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)
    at tern.eclipse.ide.internal.core.resources.IDETernServerAsyncReqProcessor.run(IDETernServerAsyncReqProcessor.java:105)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

-----------------------------------
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: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)
    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.ui.hover.TernHover.getHoverInfo2(TernHover.java:79)
    at tern.eclipse.ide.ui.hover.TernHover.getHoverInfo(TernHover.java:50)
    at org.eclipse.wst.jsdt.internal.ui.text.java.hover.JavaEditorTextHoverProxy.getHoverInfo(JavaEditorTextHoverProxy.java:67)
    at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:168)

-----------------------------------

Tern error#jshint with 154038ms: 
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: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)
    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:640)
    at tern.eclipse.ide.linter.core.validation.TernValidationHelper.validate(TernValidationHelper.java:47)
    at tern.eclipse.ide.linter.internal.ui.validation.TernSourceValidator.validate(TernSourceValidator.java:74)
    at org.eclipse.wst.sse.ui.internal.reconcile.validator.ReconcileStepForValidator.validate(ReconcileStepForValidator.java:303)
    at org.eclipse.wst.sse.ui.internal.reconcile.validator.ReconcileStepForValidator.reconcileModel(ReconcileStepForValidator.java:262)
    at org.eclipse.jface.text.reconciler.AbstractReconcileStep.reconcile(AbstractReconcileStep.java:95)
    at org.eclipse.wst.sse.ui.internal.reconcile.validator.ValidatorStrategy.reconcile(ValidatorStrategy.java:269)
    at org.eclipse.wst.sse.ui.internal.reconcile.DocumentRegionProcessor.process(DocumentRegionProcessor.java:321)
    at org.eclipse.wst.sse.ui.internal.reconcile.DirtyRegionProcessor$BackgroundThread.run(DirtyRegionProcessor.java:691)

-----------------------------------
@KnightYoshi KnightYoshi changed the title Tern Content Assist Timing Out and Out of Memory Tern Content Assist Hangs and Out of Memory Jun 9, 2016
@angelozerr
Copy link
Owner

It's little hard to help you with your info. Could you share your project please?

@KnightYoshi
Copy link
Author

KnightYoshi commented Jun 10, 2016

Whoops! Meant to reply to this way sooner, but got busy.

I can't share the project itself, but I can share the JavaScript resources and project config/settings
https://github.com/Knight-Yoshi/terntest

As I said I didn't change anything in Eclipse itself and it was working fine two days ago and the issues only started yesterday afternoon.

@KnightYoshi
Copy link
Author

KnightYoshi commented Jun 10, 2016

May be worth noting that yesterday morning my system did perform an update and other Eclipse plugins had a few problems, like EGit saying a perference node had been removed.

I replaced that installation of Eclipse with a new one and a fresh copy of Tern. Other plugin issues were resolved, but Tern still times out. Maybe it's an issue with Node then?

@angelozerr
Copy link
Owner

Try to exclude vendor folder by adding it with JavaScript/Include Path and add exclusion like **/vendor/*

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants