From 50bc19271f3a176089f03aabd24ea87246f0d1f4 Mon Sep 17 00:00:00 2001 From: Peter Gubka Date: Fri, 16 Dec 2016 11:39:55 +0100 Subject: [PATCH] Rework of Restperfclient__Invoke_With_Timeout kw to avoid broken ssh session In the jobs netconf-csit-1node-periodic-scale-only- it took too long to handle 65k requests via netconf connector and ssh session became broken. To avoid this execute command kw was replced with write and read until kws. Minor changes to support debugging in libraries/SSHKeywords.robot and restperfclient/mdsal.robot Change-Id: I080edb518acfe2e955fbe249e6e7bb33d8099eda Signed-off-by: Peter Gubka --- csit/libraries/RestPerfClient.robot | 13 ++++++++++--- csit/suites/netconf/restperfclient/mdsal.robot | 4 +++- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/csit/libraries/RestPerfClient.robot b/csit/libraries/RestPerfClient.robot index 0bb873abd0..1a1b6f13bf 100644 --- a/csit/libraries/RestPerfClient.robot +++ b/csit/libraries/RestPerfClient.robot @@ -52,10 +52,18 @@ RestPerfClient__Kill SSHLibrary.Set_Client_Configuration timeout=5 SSHLibrary.Read_Until_Prompt +Restperfclient__Wait_For_Finish + SSHLibrary.Write ${Empty} + ${stdout}= SSHLibrary.Read_Until_Prompt + Restperfclient__Invoke_With_Timeout [Arguments] ${timeout} ${command} - [Timeout] ${timeout} - Execute_Command_Passes ${command} >${RestPerfClient__restperfclientlog} 2>&1 + ${stdout}= SSHLibrary.Read + BuiltIn.Log ${stdout} + ${cmd}= BuiltIn.Set_Variable ${command} 2>&1 | tee ${RestPerfClient__restperfclientlog} + SSHLibrary.Write ${cmd} + SSHLibrary.Set_Client_Configuration timeout=120 + BuiltIn.Wait_Until_Keyword_Succeeds ${timeout} 1s Restperfclient__Wait_For_Finish Execute_Command_Passes cat ${RestPerfClient__restperfclientlog} Invoke_Restperfclient @@ -76,7 +84,6 @@ Invoke_Restperfclient ${command}= BuiltIn.Set_Variable ${RestPerfClient__restperfclient_invocation_command_prefix} ${options} BuiltIn.Log Running restperfclient: ${command} SSHLibrary.Switch_Connection ${RestPerfClient__restperfclient} - SSHLibrary.Set_Client_Configuration timeout=${timeout} ${keyword_timeout}= DateTime.Add_Time_To_Time ${timeout} 2m result_format=compact SetupUtils.Set_Known_Bug_Id 5413 ${restperfclient_running}= Set_Variable True diff --git a/csit/suites/netconf/restperfclient/mdsal.robot b/csit/suites/netconf/restperfclient/mdsal.robot index 00c5725a44..ec0e733d75 100644 --- a/csit/suites/netconf/restperfclient/mdsal.robot +++ b/csit/suites/netconf/restperfclient/mdsal.robot @@ -34,7 +34,7 @@ Variables ${CURDIR}/../../../variables/Variables.py *** Variables *** ${DIRECTORY_WITH_TEMPLATE_FOLDERS} ${CURDIR}/../../../variables/netconf/RestPerfClient ${REQUEST_COUNT} 65536 -${device_type} default +${device_type} full-uri-device ${test_device} odl-mdsal-northbound-via-netconf-connector *** Test Cases *** @@ -114,6 +114,8 @@ Setup_Everything SetupUtils.Setup_Utils_For_Setup_And_Teardown NetconfKeywords.Setup_Netconf_Keywords RestPerfClient.Setup_Restperfclient + ${device_type}= BuiltIn.Set_Variable_If ${USE_NETCONF_CONNECTOR}==${True} default ${device_type} + BuiltIn.Set_Suite_Variable ${device_type} # Calculate timeouts ${value}= BuiltIn.Evaluate ${REQUEST_COUNT}/50+10 Utils.Set_User_Configurable_Variable_Default DIRECT_MDSAL_TIMEOUT ${value} s -- 2.36.6