Q7

Couldn't connect to AUT: Couldn't open ECL session

Details

  • Type: Bug Bug
  • Status: Resolved Resolved
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 1.2.17
  • Fix Version/s: 1.2.18
  • Component/s: Server
  • Labels:
    None
  • Environment:
    cloud.xored.com, q7 maven plugin 1.2.17
  • Test Mode:
    Manual

Description

Got test failure with "Couldn't connect to AUT: Couldn't open ECL session"

See http://eclipse-testing-2.xored.cloudbees.net/execution/2031

Activity

Hide
Andrey Sobolev added a comment - 20/Feb/13 4:39 PM

Following exception was first problem point:

java.net.ConnectException: Connection refused: connect
	at java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
	at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
	at java.net.Socket.connect(Socket.java:529)
	at java.net.Socket.connect(Socket.java:478)
	at org.eclipse.ecl.client.tcp.EclTcpSession.<init>(EclTcpSession.java:76)
	at org.eclipse.ecl.client.tcp.EclTcpClientManager.startClientSession(EclTcpClientManager.java:26)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.createEclSession(BaseAutLaunch.java:678)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.execute(BaseAutLaunch.java:112)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.execute(BaseAutLaunch.java:105)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.shutdownPlayer(BaseAutLaunch.java:496)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.doExecute(BaseAutLaunch.java:460)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.execTest(BaseAutLaunch.java:397)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.run(BaseAutLaunch.java:347)
	at com.xored.q7.internal.launching.ecl.EclScenarioExecutable.doExecuteTest(EclScenarioExecutable.java:94)
	at com.xored.q7.internal.launching.ecl.EclScenarioExecutable.doExecute(EclScenarioExecutable.java:54)
	at com.xored.q7.internal.launching.DataExecutable.execute(DataExecutable.java:89)
	at com.xored.q7.internal.launching.Q7LaunchManager$SessionRunnable.execute(Q7LaunchManager.java:155)
	at com.xored.q7.internal.launching.Q7LaunchManager$SessionRunnable.execute(Q7LaunchManager.java:174)
	at com.xored.q7.internal.launching.Q7LaunchManager$SessionRunnable.run(Q7LaunchManager.java:91)
	at com.xored.q7.internal.launching.Q7LaunchManager$ExecThread$1.run(Q7LaunchManager.java:523)
	at java.lang.Thread.run(Thread.java:662)

!ENTRY com.xored.q7.core 4 0 2013-02-20 11:45:28.334
!MESSAGE Couldn't open ECL session
!STACK 1
org.eclipse.core.runtime.CoreException: Couldn't open ECL session
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.createEclSession(BaseAutLaunch.java:681)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.execute(BaseAutLaunch.java:112)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.execute(BaseAutLaunch.java:105)
	at com.xored.q7.internal.launching.reporting.ReportMaker.endReportNode(ReportMaker.java:67)
	at com.xored.q7.internal.launching.ecl.EclScenarioExecutable.postExecute(EclScenarioExecutable.java:86)
	at com.xored.q7.internal.launching.Q7LaunchManager$SessionRunnable.execute(Q7LaunchManager.java:185)
	at com.xored.q7.internal.launching.Q7LaunchManager$SessionRunnable.execute(Q7LaunchManager.java:174)
	at com.xored.q7.internal.launching.Q7LaunchManager$SessionRunnable.run(Q7LaunchManager.java:91)
	at com.xored.q7.internal.launching.Q7LaunchManager$ExecThread$1.run(Q7LaunchManager.java:523)
	at java.lang.Thread.run(Thread.java:662)
Caused by: java.net.ConnectException: Connection refused: connect
	at java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
	at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
	at java.net.Socket.connect(Socket.java:529)
	at java.net.Socket.connect(Socket.java:478)
	at org.eclipse.ecl.client.tcp.EclTcpSession.<init>(EclTcpSession.java:76)
	at org.eclipse.ecl.client.tcp.EclTcpClientManager.startClientSession(EclTcpClientManager.java:26)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.createEclSession(BaseAutLaunch.java:678)
	... 9 more
Show
Andrey Sobolev added a comment - 20/Feb/13 4:39 PM Following exception was first problem point:
java.net.ConnectException: Connection refused: connect
	at java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
	at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
	at java.net.Socket.connect(Socket.java:529)
	at java.net.Socket.connect(Socket.java:478)
	at org.eclipse.ecl.client.tcp.EclTcpSession.<init>(EclTcpSession.java:76)
	at org.eclipse.ecl.client.tcp.EclTcpClientManager.startClientSession(EclTcpClientManager.java:26)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.createEclSession(BaseAutLaunch.java:678)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.execute(BaseAutLaunch.java:112)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.execute(BaseAutLaunch.java:105)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.shutdownPlayer(BaseAutLaunch.java:496)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.doExecute(BaseAutLaunch.java:460)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.execTest(BaseAutLaunch.java:397)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.run(BaseAutLaunch.java:347)
	at com.xored.q7.internal.launching.ecl.EclScenarioExecutable.doExecuteTest(EclScenarioExecutable.java:94)
	at com.xored.q7.internal.launching.ecl.EclScenarioExecutable.doExecute(EclScenarioExecutable.java:54)
	at com.xored.q7.internal.launching.DataExecutable.execute(DataExecutable.java:89)
	at com.xored.q7.internal.launching.Q7LaunchManager$SessionRunnable.execute(Q7LaunchManager.java:155)
	at com.xored.q7.internal.launching.Q7LaunchManager$SessionRunnable.execute(Q7LaunchManager.java:174)
	at com.xored.q7.internal.launching.Q7LaunchManager$SessionRunnable.run(Q7LaunchManager.java:91)
	at com.xored.q7.internal.launching.Q7LaunchManager$ExecThread$1.run(Q7LaunchManager.java:523)
	at java.lang.Thread.run(Thread.java:662)

!ENTRY com.xored.q7.core 4 0 2013-02-20 11:45:28.334
!MESSAGE Couldn't open ECL session
!STACK 1
org.eclipse.core.runtime.CoreException: Couldn't open ECL session
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.createEclSession(BaseAutLaunch.java:681)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.execute(BaseAutLaunch.java:112)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.execute(BaseAutLaunch.java:105)
	at com.xored.q7.internal.launching.reporting.ReportMaker.endReportNode(ReportMaker.java:67)
	at com.xored.q7.internal.launching.ecl.EclScenarioExecutable.postExecute(EclScenarioExecutable.java:86)
	at com.xored.q7.internal.launching.Q7LaunchManager$SessionRunnable.execute(Q7LaunchManager.java:185)
	at com.xored.q7.internal.launching.Q7LaunchManager$SessionRunnable.execute(Q7LaunchManager.java:174)
	at com.xored.q7.internal.launching.Q7LaunchManager$SessionRunnable.run(Q7LaunchManager.java:91)
	at com.xored.q7.internal.launching.Q7LaunchManager$ExecThread$1.run(Q7LaunchManager.java:523)
	at java.lang.Thread.run(Thread.java:662)
Caused by: java.net.ConnectException: Connection refused: connect
	at java.net.PlainSocketImpl.socketConnect(Native Method)
	at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
	at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
	at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
	at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
	at java.net.Socket.connect(Socket.java:529)
	at java.net.Socket.connect(Socket.java:478)
	at org.eclipse.ecl.client.tcp.EclTcpSession.<init>(EclTcpSession.java:76)
	at org.eclipse.ecl.client.tcp.EclTcpClientManager.startClientSession(EclTcpClientManager.java:26)
	at com.xored.q7.internal.launching.aut.BaseAutLaunch.createEclSession(BaseAutLaunch.java:678)
	... 9 more
Hide
Andrey Sobolev added a comment - 20/Feb/13 4:40 PM

On next AUT launches ECL is not setting up, because of unknown reason. 3 times it happen and test is returned as failed.

Show
Andrey Sobolev added a comment - 20/Feb/13 4:40 PM On next AUT launches ECL is not setting up, because of unknown reason. 3 times it happen and test is returned as failed.
Hide
Andrey Sobolev added a comment - 25/Feb/13 3:51 PM

Issue is still reproducible on agents.

Show
Andrey Sobolev added a comment - 25/Feb/13 3:51 PM Issue is still reproducible on agents.
Hide
Andrey Sobolev added a comment - 25/Feb/13 3:59 PM

Looks like caused mostly then test timeout is happen, and we shutdown aut. Need to recheck server logic in this area.

Show
Andrey Sobolev added a comment - 25/Feb/13 3:59 PM Looks like caused mostly then test timeout is happen, and we shutdown aut. Need to recheck server logic in this area.
Hide
Andrey Sobolev added a comment - 26/Feb/13 6:11 PM

Fixed.

Caused by not correct AUT shutdown logic.

Show
Andrey Sobolev added a comment - 26/Feb/13 6:11 PM Fixed. Caused by not correct AUT shutdown logic.
Hide
Andrey Sobolev added a comment - 26/Feb/13 9:25 PM

Issue is still reproducible on latest Server.

Show
Andrey Sobolev added a comment - 26/Feb/13 9:25 PM Issue is still reproducible on latest Server.
Hide
komaz added a comment - 01/Mar/13 8:58 AM

special mode for agents might help: once this error happens, we can connect to aut with debugger

Show
komaz added a comment - 01/Mar/13 8:58 AM special mode for agents might help: once this error happens, we can connect to aut with debugger
Hide
Andrey Sobolev added a comment - 14/Mar/13 7:42 PM

Issue is resolved.
Problem was with Q7 restart handling.
In one core system, terminate event will occur a little bit later then restart is happen.

On restart original launch instance was terminated and removed from our internal AUT map. But it still was contain Q7_LAUNCH_ID, so then terminate event was received launch was incorrectly associated to new launch and terminated.

Q7 server is not expected such situations, so have both fixes in Q7 and Q7 Cloud.

Fill resolve issue then new Q7 Cloud instance will be uploaded.

Show
Andrey Sobolev added a comment - 14/Mar/13 7:42 PM Issue is resolved. Problem was with Q7 restart handling. In one core system, terminate event will occur a little bit later then restart is happen. On restart original launch instance was terminated and removed from our internal AUT map. But it still was contain Q7_LAUNCH_ID, so then terminate event was received launch was incorrectly associated to new launch and terminated. Q7 server is not expected such situations, so have both fixes in Q7 and Q7 Cloud. Fill resolve issue then new Q7 Cloud instance will be uploaded.
Hide
Andrey Sobolev added a comment - 15/Mar/13 1:08 PM

Fixed.

Show
Andrey Sobolev added a comment - 15/Mar/13 1:08 PM Fixed.
Hide
kanterov added a comment - 15/Mar/13 2:08 PM

Great job! Appreciate it.

Show
kanterov added a comment - 15/Mar/13 2:08 PM Great job! Appreciate it.
Hide
Andrey Sobolev added a comment - 18/Mar/13 11:01 AM

Ok, Will fix.
Second one is important.

Show
Andrey Sobolev added a comment - 18/Mar/13 11:01 AM Ok, Will fix. Second one is important.
Hide
Andrey Sobolev added a comment - 18/Mar/13 5:54 PM

Fixed. Also move restart to another job for debug events to process immediately.

Show
Andrey Sobolev added a comment - 18/Mar/13 5:54 PM Fixed. Also move restart to another job for debug events to process immediately.

People

Vote (0)
Watch (0)

Dates

  • Created:
    20/Feb/13 1:45 PM
    Updated:
    07/Aug/13 2:37 PM
    Resolved:
    15/Mar/13 1:08 PM