You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Roman Guseinov (JIRA)" <ji...@apache.org> on 2018/10/22 03:13:00 UTC

[jira] [Created] (IGNITE-9956) Web Agent should handle EOFException in the process of node stopping

Roman Guseinov created IGNITE-9956:
--------------------------------------

             Summary: Web Agent should handle EOFException in the process of node stopping
                 Key: IGNITE-9956
                 URL: https://issues.apache.org/jira/browse/IGNITE-9956
             Project: Ignite
          Issue Type: Bug
          Components: UI
            Reporter: Roman Guseinov


If web agent is connected to a node which starts stopping we will see the following message in the agent's logs:

{code:java}
[2018-10-03 12:19:32,672][ERROR][pool-3-thread-48][AbstractListener] Failed to execute REST command with parameters: {p1=6840C2E6-EE22-4F96-8BC3-35DFD60497CF, p2=org.gridgain.grid.internal.visor.node.VisorGridGainNodeConfigurationCollectorTask, p3=java.lang.Void, name=o.a.i.i.v.compute.VisorGatewayTask, cmd=exe}
java.io.IOException: unexpected end of stream on Connection{datafabric-dev-22.test.com:8080, proxy=DIRECT hostAddress=datafabric-dev-22.test.com/10.54.1.21:8080 cipherSuite=none protocol=http/1.1}
	at okhttp3.internal.http1.Http1Codec.readResponseHeaders(Http1Codec.java:205)
	at okhttp3.internal.http.CallServerInterceptor.intercept(CallServerInterceptor.java:75)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
	at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:45)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67)
	at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67)
	at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
	at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:120)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67)
	at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:185)
	at okhttp3.RealCall.execute(RealCall.java:69)
	at org.apache.ignite.console.agent.rest.RestExecutor.sendRequest(RestExecutor.java:169)
	at org.apache.ignite.console.agent.rest.RestExecutor.sendRequest(RestExecutor.java:184)
	at org.apache.ignite.console.agent.handlers.RestListener.execute(RestListener.java:85)
	at org.apache.ignite.console.agent.handlers.AbstractListener.lambda$call$0(AbstractListener.java:76)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.io.EOFException: \n not found: limit=0 content=…
	at okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.java:226)
	at okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.java:210)
	at okhttp3.internal.http1.Http1Codec.readResponseHeaders(Http1Codec.java:189)
	... 24 more
{code}

It looks like node returns an empty response. Web agent should handle that, print a more understandable message and start trying to connect to other nodes immediately.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)