Github user kiwiflyer commented on the pull request:

    https://github.com/apache/cloudstack/pull/1430#issuecomment-199787118
  
    Test log for reconnect scenerio:
    
    Agent throws an exception that can never be recovered from when the agent 
attempts to reconnect and is sent a RST. This case occurs when a load balancer 
(haproxy) is proxying the traffic and there is no management server active to 
serve the request on the backend.
    
    Original issue logs from agent.log:
    
    2016-03-03 17:15:36,527 INFO utils.nio.NioClient (logid:) NioClient 
connection closed
    2016-03-03 17:15:36,527 INFO cloud.agent.Agent (logid:) Reconnecting...
    2016-03-03 17:15:36,527 INFO utils.nio.NioClient (logid:) Connecting to 
10.103.0.154:8250
    2016-03-03 17:15:36,540 ERROR utils.nio.NioConnection (logid:) Unable to 
initialize the threads.
    java.io.IOException: Connection closed with -1 on reading size.
    at com.cloud.utils.nio.Link.doHandshake(Link.java:513)
    at com.cloud.utils.nio.NioClient.init(NioClient.java:80)
    at com.cloud.utils.nio.NioConnection.start(NioConnection.java:88)
    at com.cloud.agent.Agent.reconnect(Agent.java:413)
    at com.cloud.agent.Agent$ServerHandler.doTask(Agent.java:868)
    at com.cloud.utils.nio.Task.call(Task.java:83)
    at com.cloud.utils.nio.Task.call(Task.java:29)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
    2016-03-03 17:15:36,545 INFO utils.exception.CSExceptionErrorCode (logid:) 
Could not find exception: com.cloud.utils.exception.NioConnectionException in 
error code list for exceptions
    After the patch is applied:
    
    2016-03-03 17:50:05,190 INFO utils.nio.NioClient (logid:) NioClient 
connection closed
    2016-03-03 17:50:05,190 INFO cloud.agent.Agent (logid:) Reconnecting...
    2016-03-03 17:50:05,190 INFO utils.nio.NioClient (logid:) Connecting to 
10.103.0.154:8250
    2016-03-03 17:50:05,206 ERROR utils.nio.NioConnection (logid:) Unable to 
initialize the threads.
    java.io.IOException: Connection closed with -1 on reading size.
    at com.cloud.utils.nio.Link.doHandshake(Link.java:513)
    at com.cloud.utils.nio.NioClient.init(NioClient.java:80)
    at com.cloud.utils.nio.NioConnection.start(NioConnection.java:88)
    at com.cloud.agent.Agent.reconnect(Agent.java:413)
    at com.cloud.agent.Agent$ServerHandler.doTask(Agent.java:869)
    at com.cloud.utils.nio.Task.call(Task.java:83)
    at com.cloud.utils.nio.Task.call(Task.java:29)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
    2016-03-03 17:50:05,210 INFO utils.exception.CSExceptionErrorCode (logid:) 
Could not find exception: com.cloud.utils.exception.NioConnectionException in 
error code list for exceptions
    2016-03-03 17:50:05,211 INFO cloud.agent.Agent (logid:) Attempted to 
connect to the server, but received an unexpected exception, trying again...
    2016-03-03 17:50:10,211 INFO cloud.agent.Agent (logid:) Reconnecting...
    2016-03-03 17:50:10,211 INFO utils.nio.NioClient (logid:) Connecting to 
10.103.0.154:8250
    
    This has been tested on 4.7.1 and master.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to