<?xml version="1.0" encoding="UTF-8"?>
<robot generator="Robot 7.4.2 (Python 3.11.10 on linux)" generated="2026-08-29T01:08:55.521770" rpa="false" schemaversion="5">
<suite id="s1" name="openflowplugin-clustering-perf-bulkomatic.txt" source="/w/workspace/openflowplugin-csit-3node-clustering-perf-bulkomatic-only-titanium/test/csit/suites/openflowplugin/Performance_Bulkomatic/100K_Flows_100DPN_3Node_Cluster_Perf_Test.robot">
<kw name="ClusterManagement_Setup" owner="ClusterManagement" type="SETUP">
<kw name="Get Variable Value" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.190393" level="INFO">${already_done} = False</msg>
<var>${already_done}</var>
<arg>\${ClusterManagement__has_setup_run}</arg>
<arg>False</arg>
<doc>Returns variable value or ``default`` if the variable does not exist.</doc>
<status status="PASS" start="2026-08-29T01:08:56.186911" elapsed="0.003533"/>
</kw>
<if>
<branch type="IF" condition="${already_done}">
<return>
<status status="NOT RUN" start="2026-08-29T01:08:56.190669" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-08-29T01:08:56.190553" elapsed="0.000163"/>
</branch>
<status status="PASS" start="2026-08-29T01:08:56.190525" elapsed="0.000215"/>
</if>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.191225" level="INFO">${ClusterManagement__has_setup_run} = True</msg>
<arg>\${ClusterManagement__has_setup_run}</arg>
<arg>True</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-29T01:08:56.190892" elapsed="0.000379"/>
</kw>
<kw name="Get Variable Value" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.191752" level="INFO">${cluster_size} = 0</msg>
<var>${cluster_size}</var>
<arg>\${NUM_ODL_SYSTEM}</arg>
<arg>1</arg>
<doc>Returns variable value or ``default`` if the variable does not exist.</doc>
<status status="PASS" start="2026-08-29T01:08:56.191447" elapsed="0.000332"/>
</kw>
<kw name="Run Keyword And Ignore Error" owner="BuiltIn">
<kw name="Convert To Integer" owner="BuiltIn">
<arg>${cluster_size}</arg>
<doc>Converts the given item to an integer number.</doc>
<status status="PASS" start="2026-08-29T01:08:56.192403" elapsed="0.000287"/>
</kw>
<msg time="2026-08-29T01:08:56.192790" level="INFO">${status} = PASS</msg>
<msg time="2026-08-29T01:08:56.192834" level="INFO">${possibly_int_of_members} = 0</msg>
<var>${status}</var>
<var>${possibly_int_of_members}</var>
<arg>BuiltIn.Convert_To_Integer</arg>
<arg>${cluster_size}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-08-29T01:08:56.191997" elapsed="0.000861"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.193395" level="INFO">${int_of_members} = 0</msg>
<var>${int_of_members}</var>
<arg>'${status}' != 'PASS'</arg>
<arg>${1}</arg>
<arg>${possibly_int_of_members}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:08:56.193028" elapsed="0.000407"/>
</kw>
<kw name="ClusterManagement__Compute_Derived_Variables" owner="ClusterManagement">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.194363" level="INFO">@{member_index_list} = [ ]</msg>
<var>@{member_index_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:56.194099" elapsed="0.000288"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.194782" level="INFO">@{session_list} = [ ]</msg>
<var>@{session_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:56.194541" elapsed="0.000267"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.195318" level="INFO">&amp;{index_to_ip_mapping} = { }</msg>
<var>&amp;{index_to_ip_mapping}</var>
<doc>Creates and returns a dictionary based on the given ``items``.</doc>
<status status="PASS" start="2026-08-29T01:08:56.194953" elapsed="0.000390"/>
</kw>
<for flavor="IN RANGE">
<iter>
<kw name="ClusterManagement__Include_Member_Index" owner="ClusterManagement">
<arg>${index}</arg>
<arg>${member_index_list}</arg>
<arg>${session_list}</arg>
<arg>${index_to_ip_mapping}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>http_retries=${http_retries}</arg>
<doc>Add a corresponding item based on index into the last three arguments.
Create the Http session whose alias is added to list.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.198238" elapsed="0.000025"/>
</kw>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-29T01:08:56.198043" elapsed="0.000264"/>
</iter>
<var>${index}</var>
<value>1</value>
<value>${int_of_members+1}</value>
<status status="NOT RUN" start="2026-08-29T01:08:56.195401" elapsed="0.002934"/>
</for>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.198821" level="INFO">${ClusterManagement__member_index_list} = []</msg>
<arg>\${ClusterManagement__member_index_list}</arg>
<arg>${member_index_list}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-29T01:08:56.198500" elapsed="0.000360"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.199339" level="INFO">${ClusterManagement__index_to_ip_mapping} = {}</msg>
<arg>\${ClusterManagement__index_to_ip_mapping}</arg>
<arg>${index_to_ip_mapping}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-29T01:08:56.199007" elapsed="0.000371"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.199994" level="INFO">${ClusterManagement__session_list} = []</msg>
<arg>\${ClusterManagement__session_list}</arg>
<arg>${session_list}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-08-29T01:08:56.199691" elapsed="0.000341"/>
</kw>
<arg>int_of_members=${int_of_members}</arg>
<arg>http_timeout=${http_timeout}</arg>
<arg>http_retries=${http_retries}</arg>
<doc>Construct index list, session list and IP mapping, publish them as suite variables.</doc>
<status status="PASS" start="2026-08-29T01:08:56.193673" elapsed="0.006415"/>
</kw>
<doc>Detect repeated call, or detect number of members and initialize derived suite variables.
Http sessions are created with parameters to not waste time when ODL is no accepting connections properly.</doc>
<status status="PASS" start="2026-08-29T01:08:56.186323" elapsed="0.013815"/>
</kw>
<test id="s1-t1" name="Check Shards Status And Initialize Variables" line="31">
<kw name="Check OpenFlow Shards Status" owner="ClusterOpenFlow">
<kw name="Run_Keyword_If_At_Least_Phosphorus" owner="CompareStream">
<kw name="Run Keyword And Return" owner="BuiltIn">
<kw name="Run_Keyword_If_At_Least" owner="CompareStream">
<kw name="Run Keyword And Return If" owner="BuiltIn">
<kw name="Remove Values From List" owner="Collections">
<arg>@{varargs}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Removes all occurrences of given ``values`` from ``list``.</doc>
<status status="PASS" start="2026-08-29T01:08:56.220462" elapsed="0.000268"/>
</kw>
<msg time="2026-08-29T01:08:56.220778" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${Stream_dict}[${ODL_STREAM}] &gt;= ${Stream_dict}[${lower_bound}]</arg>
<arg>${kw_name}</arg>
<arg>@{varargs}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-29T01:08:56.219749" elapsed="0.001097"/>
</kw>
<arg>phosphorus</arg>
<arg>${kw_name}</arg>
<arg>@{varargs}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Compare ${lower_bound} to titanium and in case titanium is at least ${lower_bound},
run Collections.Remove Values From List [['inventory', 'topology', 'default', 'entity-ownership'], 'entity-ownership'] {} and return its value.</doc>
<status status="PASS" start="2026-08-29T01:08:56.219318" elapsed="0.001599"/>
</kw>
<msg time="2026-08-29T01:08:56.220959" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>Run_Keyword_If_At_Least</arg>
<arg>phosphorus</arg>
<arg>${kw_name}</arg>
<arg>@{varargs}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-08-29T01:08:56.211552" elapsed="0.009505"/>
</kw>
<arg>Collections.Remove Values From List</arg>
<arg>${SHARD_OPER_LIST}</arg>
<arg>entity-ownership</arg>
<doc>Compare phosphorus to titanium and in case titanium is at least phosphorus,
run ${kw_name} @{varargs} &amp;{kwargs} and return its value.</doc>
<status status="PASS" start="2026-08-29T01:08:56.211168" elapsed="0.009958"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.222077" level="INFO">['inventory', 'topology', 'default']</msg>
<arg>${SHARD_OPER_LIST}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="PASS" start="2026-08-29T01:08:56.221833" elapsed="0.000290"/>
</kw>
<kw name="Verify_Leader_Exists_For_Each_Shard" owner="ClusterManagement">
<for flavor="IN">
<iter>
<kw name="Get_Leader_And_Followers_For_Shard" owner="ClusterManagement">
<kw name="Get_State_Info_For_Shard" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.226991" level="INFO">${return_list_reference} = []</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:08:56.226601" elapsed="0.000414"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.227456" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:56.227155" elapsed="0.000324"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-29T01:08:56.227551" elapsed="0.000043"/>
</return>
<msg time="2026-08-29T01:08:56.227771" level="INFO">${index_list} = []</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-08-29T01:08:56.226258" elapsed="0.001536"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-08-29T01:08:56.227937" elapsed="0.000145"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.228612" level="INFO">${ds_type} = operational</msg>
<var>${ds_type}</var>
<arg>'${shard_type}' != 'config'</arg>
<arg>operational</arg>
<arg>config</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:08:56.228238" elapsed="0.000399"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.228996" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:56.228775" elapsed="0.000244"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.229372" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:56.229146" elapsed="0.000249"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Get_Raft_State_Of_Shard_At_Member" owner="ClusterManagement">
<var>${raft_state}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${ds_type}</arg>
<arg>member_index=${index}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Send request to Jolokia on indexed member, return extracted Raft status.
Optionally, check restconf works.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.229966" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.230220" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:56.230067" elapsed="0.000203"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.230468" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:56.230293" elapsed="0.000223"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.230663" elapsed="0.000017"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:56.230538" elapsed="0.000168"/>
</branch>
<status status="NOT RUN" start="2026-08-29T01:08:56.230047" elapsed="0.000681"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-29T01:08:56.229816" elapsed="0.000934"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-29T01:08:56.229506" elapsed="0.001266"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-29T01:08:56.230807" elapsed="0.000027"/>
</return>
<msg time="2026-08-29T01:08:56.230992" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-29T01:08:56.231032" level="INFO">${follower_list} = []</msg>
<var>${leader_list}</var>
<var>${follower_list}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${shard_type}</arg>
<arg>validate=True</arg>
<arg>member_index_list=${member_index_list}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Return lists of Leader and Follower member indices from a given member index list
(or from the full list if empty). If ${shard_type} is not 'config', 'operational' is assumed.
If ${validate}, Fail if raft state is not Leader or Follower (for example on Candidate).
The biggest difference from Get_Leader_And_Followers_For_Shard
is that no check on number of Leaders is performed.</doc>
<status status="PASS" start="2026-08-29T01:08:56.225479" elapsed="0.005574"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.231561" level="INFO">Length is 0.</msg>
<msg time="2026-08-29T01:08:56.231630" level="INFO">${leader_count} = 0</msg>
<var>${leader_count}</var>
<arg>${leader_list}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-08-29T01:08:56.231218" elapsed="0.000433"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.232206" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-08-29T01:08:56.231915" elapsed="0.000372">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-29T01:08:56.231721" elapsed="0.000636">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-29T01:08:56.231697" elapsed="0.000691">No leader found.</status>
</if>
<kw name="Length Should Be" owner="BuiltIn">
<arg>${leader_list}</arg>
<arg>${1}</arg>
<arg>Too many Leaders.</arg>
<doc>Verifies that the length of the given item is correct.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.232545" elapsed="0.000020"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.232695" elapsed="0.000017"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-29T01:08:56.232784" elapsed="0.000017"/>
</return>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${shard_type}</arg>
<arg>validate=True</arg>
<arg>member_index_list=${member_index_list}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-08-29T01:08:56.223050" elapsed="0.009847">No leader found.</status>
</kw>
<var name="${shard_name}">inventory</var>
<status status="FAIL" start="2026-08-29T01:08:56.222838" elapsed="0.010122">No leader found.</status>
</iter>
<var>${shard_name}</var>
<value>@{shard_name_list}</value>
<status status="FAIL" start="2026-08-29T01:08:56.222716" elapsed="0.010297">No leader found.</status>
</for>
<arg>shard_name_list=${SHARD_OPER_LIST}</arg>
<arg>shard_type=operational</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>For each shard name, call Get_Leader_And_Followers_For_Shard.
Not much logic there, but single Keyword is useful when using BuiltIn.Wait_Until_Keyword_Succeeds.</doc>
<status status="FAIL" start="2026-08-29T01:08:56.222348" elapsed="0.010749">No leader found.</status>
</kw>
<kw name="Verify_Leader_Exists_For_Each_Shard" owner="ClusterManagement">
<arg>shard_name_list=${SHARD_CONF_LIST}</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>For each shard name, call Get_Leader_And_Followers_For_Shard.
Not much logic there, but single Keyword is useful when using BuiltIn.Wait_Until_Keyword_Succeeds.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.233319" elapsed="0.000022"/>
</kw>
<doc>Check Status for all shards in OpenFlow application.</doc>
<status status="FAIL" start="2026-08-29T01:08:56.200769" elapsed="0.032668">No leader found.</status>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<arg>3x</arg>
<arg>3s</arg>
<arg>ClusterManagement.Run_Karaf_Command_On_List_Or_All</arg>
<arg>${karaf_log_level}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.233605" elapsed="0.000019"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${flow_count_after_add}</var>
<arg>${flow_count_per_switch} * ${switch_count}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.233758" elapsed="0.000018"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${flow_count_after_add}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.233909" elapsed="0.000017"/>
</kw>
<kw name="Set DPN And Flow Count In Json Add" owner="BulkomaticKeywords">
<var>${temp_json_config_add}</var>
<arg>${orig_json_config_add}</arg>
<arg>${switch_count}</arg>
<arg>${flow_count_per_switch}</arg>
<doc>Set new DPN count and flows count per DPN in the Bulkomatic Add json file.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.234153" elapsed="0.000021"/>
</kw>
<kw name="Set DPN And Flow Count In Json Get" owner="BulkomaticKeywords">
<var>${temp_json_config_get}</var>
<arg>${orig_json_config_get}</arg>
<arg>${switch_count}</arg>
<arg>${flow_count_after_add}</arg>
<doc>Set new DPN count and flows count per DPN in the Bulkomatic Get json file.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.234422" elapsed="0.000021"/>
</kw>
<kw name="Set DPN And Flow Count In Json Del" owner="BulkomaticKeywords">
<var>${temp_json_config_del}</var>
<arg>${orig_json_config_del}</arg>
<arg>${switch_count}</arg>
<arg>${flow_count_per_switch}</arg>
<doc>Set new DPN count and flows count per DPN in the Bulkomatic Del json file.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.234673" elapsed="0.000020"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${temp_json_config_add}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.234840" elapsed="0.000018"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${temp_json_config_get}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.234991" elapsed="0.000018"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${temp_json_config_del}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.235138" elapsed="0.000017"/>
</kw>
<doc>Check Status for all shards in OpenFlow application and set the logs across cluster nodes.</doc>
<status status="FAIL" start="2026-08-29T01:08:56.200211" elapsed="0.035087">No leader found.</status>
</test>
<test id="s1-t2" name="Get Inventory Config Shard Follower And Leader" line="53">
<kw name="Get InventoryConfig Shard Status" owner="ClusterOpenFlow">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Get_Leader_And_Followers_For_Shard" owner="ClusterManagement">
<kw name="Get_State_Info_For_Shard" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.242652" level="INFO">${return_list_reference} = []</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:08:56.242296" elapsed="0.000380"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.243067" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:56.242816" elapsed="0.000273"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-29T01:08:56.243127" elapsed="0.000028"/>
</return>
<msg time="2026-08-29T01:08:56.243282" level="INFO">${index_list} = []</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-08-29T01:08:56.241921" elapsed="0.001382"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-08-29T01:08:56.243447" elapsed="0.000137"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.244020" level="INFO">${ds_type} = config</msg>
<var>${ds_type}</var>
<arg>'${shard_type}' != 'config'</arg>
<arg>operational</arg>
<arg>config</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:08:56.243722" elapsed="0.000320"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.244403" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:56.244193" elapsed="0.000246"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.244781" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:56.244567" elapsed="0.000236"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Get_Raft_State_Of_Shard_At_Member" owner="ClusterManagement">
<var>${raft_state}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${ds_type}</arg>
<arg>member_index=${index}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Send request to Jolokia on indexed member, return extracted Raft status.
Optionally, check restconf works.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.245219" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.245456" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:56.245315" elapsed="0.000189"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.245650" elapsed="0.000017"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:56.245526" elapsed="0.000170"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.245843" elapsed="0.000017"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:56.245718" elapsed="0.000169"/>
</branch>
<status status="NOT RUN" start="2026-08-29T01:08:56.245297" elapsed="0.000612"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-29T01:08:56.245057" elapsed="0.000875"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-29T01:08:56.244845" elapsed="0.001109"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-29T01:08:56.245989" elapsed="0.000026"/>
</return>
<msg time="2026-08-29T01:08:56.246169" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-29T01:08:56.246225" level="INFO">${follower_list} = []</msg>
<var>${leader_list}</var>
<var>${follower_list}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${shard_type}</arg>
<arg>validate=True</arg>
<arg>member_index_list=${member_index_list}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Return lists of Leader and Follower member indices from a given member index list
(or from the full list if empty). If ${shard_type} is not 'config', 'operational' is assumed.
If ${validate}, Fail if raft state is not Leader or Follower (for example on Candidate).
The biggest difference from Get_Leader_And_Followers_For_Shard
is that no check on number of Leaders is performed.</doc>
<status status="PASS" start="2026-08-29T01:08:56.241187" elapsed="0.005058"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.246648" level="INFO">Length is 0.</msg>
<msg time="2026-08-29T01:08:56.246714" level="INFO">${leader_count} = 0</msg>
<var>${leader_count}</var>
<arg>${leader_list}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-08-29T01:08:56.246393" elapsed="0.000342"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-29T01:08:56.247245" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-08-29T01:08:56.246988" elapsed="0.000318">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-29T01:08:56.246797" elapsed="0.000565">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-29T01:08:56.246781" elapsed="0.000608">No leader found.</status>
</if>
<kw name="Length Should Be" owner="BuiltIn">
<arg>${leader_list}</arg>
<arg>${1}</arg>
<arg>Too many Leaders.</arg>
<doc>Verifies that the length of the given item is correct.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.247538" elapsed="0.000019"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:56.247686" elapsed="0.000018"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-29T01:08:56.247743" elapsed="0.000014"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-08-29T01:08:56.238827" elapsed="0.009009">No leader found.</status>
</kw>
<kw name="Get_Leader_And_Followers_For_Shard" owner="ClusterManagement">
<kw name="Get_State_Info_For_Shard" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:08:57.258146" level="INFO">${return_list_reference} = []</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:08:57.257225" elapsed="0.001013"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:57.259235" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:57.258616" elapsed="0.000680"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-29T01:08:57.259437" elapsed="0.000084"/>
</return>
<msg time="2026-08-29T01:08:57.259784" level="INFO">${index_list} = []</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-08-29T01:08:57.256279" elapsed="0.003555"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-08-29T01:08:57.260133" elapsed="0.000429"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:08:57.261765" level="INFO">${ds_type} = config</msg>
<var>${ds_type}</var>
<arg>'${shard_type}' != 'config'</arg>
<arg>operational</arg>
<arg>config</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:08:57.260923" elapsed="0.000899"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:57.262784" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:57.262231" elapsed="0.000605"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:57.263701" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:57.263127" elapsed="0.000626"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Get_Raft_State_Of_Shard_At_Member" owner="ClusterManagement">
<var>${raft_state}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${ds_type}</arg>
<arg>member_index=${index}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Send request to Jolokia on indexed member, return extracted Raft status.
Optionally, check restconf works.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:57.264661" elapsed="0.000051"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:57.265307" elapsed="0.000056"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:57.264970" elapsed="0.000490"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:57.265798" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:57.265512" elapsed="0.000392"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:57.266261" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:57.265951" elapsed="0.000436"/>
</branch>
<status status="NOT RUN" start="2026-08-29T01:08:57.264930" elapsed="0.001526"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-29T01:08:57.264277" elapsed="0.002236"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-29T01:08:57.263856" elapsed="0.002711"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-29T01:08:57.266647" elapsed="0.000061"/>
</return>
<msg time="2026-08-29T01:08:57.267056" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-29T01:08:57.267148" level="INFO">${follower_list} = []</msg>
<var>${leader_list}</var>
<var>${follower_list}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${shard_type}</arg>
<arg>validate=True</arg>
<arg>member_index_list=${member_index_list}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Return lists of Leader and Follower member indices from a given member index list
(or from the full list if empty). If ${shard_type} is not 'config', 'operational' is assumed.
If ${validate}, Fail if raft state is not Leader or Follower (for example on Candidate).
The biggest difference from Get_Leader_And_Followers_For_Shard
is that no check on number of Leaders is performed.</doc>
<status status="PASS" start="2026-08-29T01:08:57.254699" elapsed="0.012527"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-29T01:08:57.268162" level="INFO">Length is 0.</msg>
<msg time="2026-08-29T01:08:57.268376" level="INFO">${leader_count} = 0</msg>
<var>${leader_count}</var>
<arg>${leader_list}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-08-29T01:08:57.267613" elapsed="0.000837"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-29T01:08:57.269688" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-08-29T01:08:57.269022" elapsed="0.000856">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-29T01:08:57.268591" elapsed="0.001450">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-29T01:08:57.268554" elapsed="0.001570">No leader found.</status>
</if>
<kw name="Length Should Be" owner="BuiltIn">
<arg>${leader_list}</arg>
<arg>${1}</arg>
<arg>Too many Leaders.</arg>
<doc>Verifies that the length of the given item is correct.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:57.270546" elapsed="0.000047"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:57.270889" elapsed="0.000041"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-29T01:08:57.271016" elapsed="0.000031"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-08-29T01:08:57.248795" elapsed="0.022457">No leader found.</status>
</kw>
<kw name="Get_Leader_And_Followers_For_Shard" owner="ClusterManagement">
<kw name="Get_State_Info_For_Shard" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:08:58.281664" level="INFO">${return_list_reference} = []</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:08:58.280720" elapsed="0.001004"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:58.282734" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:58.282051" elapsed="0.000736"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-29T01:08:58.282883" elapsed="0.000071"/>
</return>
<msg time="2026-08-29T01:08:58.283242" level="INFO">${index_list} = []</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-08-29T01:08:58.279882" elapsed="0.003412"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-08-29T01:08:58.283682" elapsed="0.000378"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:08:58.285414" level="INFO">${ds_type} = config</msg>
<var>${ds_type}</var>
<arg>'${shard_type}' != 'config'</arg>
<arg>operational</arg>
<arg>config</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:08:58.284531" elapsed="0.000970"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:58.286525" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:58.285885" elapsed="0.000694"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:58.287447" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:58.286878" elapsed="0.000625"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Get_Raft_State_Of_Shard_At_Member" owner="ClusterManagement">
<var>${raft_state}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${ds_type}</arg>
<arg>member_index=${index}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Send request to Jolokia on indexed member, return extracted Raft status.
Optionally, check restconf works.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:58.288399" elapsed="0.000077"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:58.289047" elapsed="0.000042"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:58.288752" elapsed="0.000404"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:58.289569" elapsed="0.000047"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:58.289241" elapsed="0.000444"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:58.290009" elapsed="0.000039"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:58.289731" elapsed="0.000379"/>
</branch>
<status status="NOT RUN" start="2026-08-29T01:08:58.288705" elapsed="0.001449"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-29T01:08:58.288015" elapsed="0.002225"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-29T01:08:58.287607" elapsed="0.002689"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-29T01:08:58.290397" elapsed="0.000081"/>
</return>
<msg time="2026-08-29T01:08:58.290824" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-29T01:08:58.290913" level="INFO">${follower_list} = []</msg>
<var>${leader_list}</var>
<var>${follower_list}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${shard_type}</arg>
<arg>validate=True</arg>
<arg>member_index_list=${member_index_list}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Return lists of Leader and Follower member indices from a given member index list
(or from the full list if empty). If ${shard_type} is not 'config', 'operational' is assumed.
If ${validate}, Fail if raft state is not Leader or Follower (for example on Candidate).
The biggest difference from Get_Leader_And_Followers_For_Shard
is that no check on number of Leaders is performed.</doc>
<status status="PASS" start="2026-08-29T01:08:58.278342" elapsed="0.012617"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-29T01:08:58.291963" level="INFO">Length is 0.</msg>
<msg time="2026-08-29T01:08:58.292115" level="INFO">${leader_count} = 0</msg>
<var>${leader_count}</var>
<arg>${leader_list}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-08-29T01:08:58.291361" elapsed="0.000799"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-29T01:08:58.293497" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-08-29T01:08:58.292836" elapsed="0.000820">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-29T01:08:58.292341" elapsed="0.001441">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-29T01:08:58.292294" elapsed="0.001551">No leader found.</status>
</if>
<kw name="Length Should Be" owner="BuiltIn">
<arg>${leader_list}</arg>
<arg>${1}</arg>
<arg>Too many Leaders.</arg>
<doc>Verifies that the length of the given item is correct.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:58.294142" elapsed="0.000076"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:58.294561" elapsed="0.000043"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-29T01:08:58.294696" elapsed="0.000031"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-08-29T01:08:58.272372" elapsed="0.022532">No leader found.</status>
</kw>
<kw name="Get_Leader_And_Followers_For_Shard" owner="ClusterManagement">
<kw name="Get_State_Info_For_Shard" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:08:59.304680" level="INFO">${return_list_reference} = []</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:08:59.303791" elapsed="0.000949"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:59.305686" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:59.305059" elapsed="0.000678"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-29T01:08:59.305827" elapsed="0.000068"/>
</return>
<msg time="2026-08-29T01:08:59.306137" level="INFO">${index_list} = []</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-08-29T01:08:59.303017" elapsed="0.003196"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-08-29T01:08:59.306531" elapsed="0.000319"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:08:59.307866" level="INFO">${ds_type} = config</msg>
<var>${ds_type}</var>
<arg>'${shard_type}' != 'config'</arg>
<arg>operational</arg>
<arg>config</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:08:59.307158" elapsed="0.000759"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:59.308742" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:59.308249" elapsed="0.000541"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:08:59.309595" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:08:59.309073" elapsed="0.000572"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Get_Raft_State_Of_Shard_At_Member" owner="ClusterManagement">
<var>${raft_state}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${ds_type}</arg>
<arg>member_index=${index}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Send request to Jolokia on indexed member, return extracted Raft status.
Optionally, check restconf works.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:59.310497" elapsed="0.000049"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:59.310991" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:59.310706" elapsed="0.000511"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:59.311576" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:59.311275" elapsed="0.000408"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:59.311999" elapsed="0.000039"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:08:59.311730" elapsed="0.000367"/>
</branch>
<status status="NOT RUN" start="2026-08-29T01:08:59.310669" elapsed="0.001472"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-29T01:08:59.310122" elapsed="0.002095"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-29T01:08:59.309749" elapsed="0.002521"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-29T01:08:59.312348" elapsed="0.000055"/>
</return>
<msg time="2026-08-29T01:08:59.312762" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-29T01:08:59.312849" level="INFO">${follower_list} = []</msg>
<var>${leader_list}</var>
<var>${follower_list}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${shard_type}</arg>
<arg>validate=True</arg>
<arg>member_index_list=${member_index_list}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Return lists of Leader and Follower member indices from a given member index list
(or from the full list if empty). If ${shard_type} is not 'config', 'operational' is assumed.
If ${validate}, Fail if raft state is not Leader or Follower (for example on Candidate).
The biggest difference from Get_Leader_And_Followers_For_Shard
is that no check on number of Leaders is performed.</doc>
<status status="PASS" start="2026-08-29T01:08:59.301588" elapsed="0.011305"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-29T01:08:59.313814" level="INFO">Length is 0.</msg>
<msg time="2026-08-29T01:08:59.313962" level="INFO">${leader_count} = 0</msg>
<var>${leader_count}</var>
<arg>${leader_list}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-08-29T01:08:59.313246" elapsed="0.000761"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-29T01:08:59.315175" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-08-29T01:08:59.314614" elapsed="0.000742">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-29T01:08:59.314139" elapsed="0.001361">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-29T01:08:59.314105" elapsed="0.001458">No leader found.</status>
</if>
<kw name="Length Should Be" owner="BuiltIn">
<arg>${leader_list}</arg>
<arg>${1}</arg>
<arg>Too many Leaders.</arg>
<doc>Verifies that the length of the given item is correct.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:59.315858" elapsed="0.000042"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:08:59.316217" elapsed="0.000042"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-29T01:08:59.316347" elapsed="0.000030"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-08-29T01:08:59.295919" elapsed="0.020654">No leader found.</status>
</kw>
<kw name="Get_Leader_And_Followers_For_Shard" owner="ClusterManagement">
<kw name="Get_State_Info_For_Shard" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:09:00.326160" level="INFO">${return_list_reference} = []</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:09:00.325341" elapsed="0.000906"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:00.327156" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:00.326588" elapsed="0.000649"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-29T01:09:00.327328" elapsed="0.000064"/>
</return>
<msg time="2026-08-29T01:09:00.327659" level="INFO">${index_list} = []</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-08-29T01:09:00.324591" elapsed="0.003115"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-08-29T01:09:00.328001" elapsed="0.000345"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:09:00.329366" level="INFO">${ds_type} = config</msg>
<var>${ds_type}</var>
<arg>'${shard_type}' != 'config'</arg>
<arg>operational</arg>
<arg>config</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:09:00.328679" elapsed="0.000737"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:00.330237" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:00.329742" elapsed="0.000545"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:00.331063" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:00.330595" elapsed="0.000517"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Get_Raft_State_Of_Shard_At_Member" owner="ClusterManagement">
<var>${raft_state}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${ds_type}</arg>
<arg>member_index=${index}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Send request to Jolokia on indexed member, return extracted Raft status.
Optionally, check restconf works.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:00.331992" elapsed="0.000047"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:00.332531" elapsed="0.000042"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:00.332228" elapsed="0.000415"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:00.332956" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:00.332690" elapsed="0.000455"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:00.333528" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:00.333228" elapsed="0.000402"/>
</branch>
<status status="NOT RUN" start="2026-08-29T01:09:00.332163" elapsed="0.001512"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-29T01:09:00.331667" elapsed="0.002056"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:00.331253" elapsed="0.002522"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-29T01:09:00.333855" elapsed="0.000054"/>
</return>
<msg time="2026-08-29T01:09:00.334275" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-29T01:09:00.334364" level="INFO">${follower_list} = []</msg>
<var>${leader_list}</var>
<var>${follower_list}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${shard_type}</arg>
<arg>validate=True</arg>
<arg>member_index_list=${member_index_list}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Return lists of Leader and Follower member indices from a given member index list
(or from the full list if empty). If ${shard_type} is not 'config', 'operational' is assumed.
If ${validate}, Fail if raft state is not Leader or Follower (for example on Candidate).
The biggest difference from Get_Leader_And_Followers_For_Shard
is that no check on number of Leaders is performed.</doc>
<status status="PASS" start="2026-08-29T01:09:00.323108" elapsed="0.011301"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-29T01:09:00.335322" level="INFO">Length is 0.</msg>
<msg time="2026-08-29T01:09:00.335493" level="INFO">${leader_count} = 0</msg>
<var>${leader_count}</var>
<arg>${leader_list}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-08-29T01:09:00.334758" elapsed="0.000783"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-29T01:09:00.336698" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-08-29T01:09:00.336089" elapsed="0.000747">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-29T01:09:00.335674" elapsed="0.001287">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-29T01:09:00.335638" elapsed="0.001383">No leader found.</status>
</if>
<kw name="Length Should Be" owner="BuiltIn">
<arg>${leader_list}</arg>
<arg>${1}</arg>
<arg>Too many Leaders.</arg>
<doc>Verifies that the length of the given item is correct.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:00.337343" elapsed="0.000043"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:00.337698" elapsed="0.000039"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:00.337823" elapsed="0.000031"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-08-29T01:09:00.317654" elapsed="0.020376">No leader found.</status>
</kw>
<kw name="Get_Leader_And_Followers_For_Shard" owner="ClusterManagement">
<kw name="Get_State_Info_For_Shard" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:09:01.348042" level="INFO">${return_list_reference} = []</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:09:01.347163" elapsed="0.000937"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:01.349039" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:01.348469" elapsed="0.000620"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-29T01:09:01.349209" elapsed="0.000073"/>
</return>
<msg time="2026-08-29T01:09:01.349551" level="INFO">${index_list} = []</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-08-29T01:09:01.346421" elapsed="0.003177"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-08-29T01:09:01.349889" elapsed="0.000349"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:09:01.351252" level="INFO">${ds_type} = config</msg>
<var>${ds_type}</var>
<arg>'${shard_type}' != 'config'</arg>
<arg>operational</arg>
<arg>config</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:09:01.350569" elapsed="0.000734"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:01.352084" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:01.351622" elapsed="0.000510"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:01.352930" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:01.352466" elapsed="0.000512"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Get_Raft_State_Of_Shard_At_Member" owner="ClusterManagement">
<var>${raft_state}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${ds_type}</arg>
<arg>member_index=${index}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Send request to Jolokia on indexed member, return extracted Raft status.
Optionally, check restconf works.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:01.353830" elapsed="0.000047"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:01.354348" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:01.354038" elapsed="0.000437"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:01.354793" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:01.354524" elapsed="0.000371"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:01.355336" elapsed="0.000042"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:01.354940" elapsed="0.000517"/>
</branch>
<status status="NOT RUN" start="2026-08-29T01:09:01.354000" elapsed="0.001504"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-29T01:09:01.353505" elapsed="0.002047"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:01.353082" elapsed="0.002520"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-29T01:09:01.355677" elapsed="0.000054"/>
</return>
<msg time="2026-08-29T01:09:01.356068" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-29T01:09:01.356156" level="INFO">${follower_list} = []</msg>
<var>${leader_list}</var>
<var>${follower_list}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${shard_type}</arg>
<arg>validate=True</arg>
<arg>member_index_list=${member_index_list}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Return lists of Leader and Follower member indices from a given member index list
(or from the full list if empty). If ${shard_type} is not 'config', 'operational' is assumed.
If ${validate}, Fail if raft state is not Leader or Follower (for example on Candidate).
The biggest difference from Get_Leader_And_Followers_For_Shard
is that no check on number of Leaders is performed.</doc>
<status status="PASS" start="2026-08-29T01:09:01.344957" elapsed="0.011273"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-29T01:09:01.357124" level="INFO">Length is 0.</msg>
<msg time="2026-08-29T01:09:01.357304" level="INFO">${leader_count} = 0</msg>
<var>${leader_count}</var>
<arg>${leader_list}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-08-29T01:09:01.356579" elapsed="0.000771"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-29T01:09:01.358524" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-08-29T01:09:01.357921" elapsed="0.000747">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-29T01:09:01.357505" elapsed="0.001286">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-29T01:09:01.357468" elapsed="0.001382">No leader found.</status>
</if>
<kw name="Length Should Be" owner="BuiltIn">
<arg>${leader_list}</arg>
<arg>${1}</arg>
<arg>Too many Leaders.</arg>
<doc>Verifies that the length of the given item is correct.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:01.359148" elapsed="0.000072"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:01.359542" elapsed="0.000041"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:01.359671" elapsed="0.000031"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-08-29T01:09:01.339259" elapsed="0.020615">No leader found.</status>
</kw>
<kw name="Get_Leader_And_Followers_For_Shard" owner="ClusterManagement">
<kw name="Get_State_Info_For_Shard" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:09:02.369884" level="INFO">${return_list_reference} = []</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:09:02.368947" elapsed="0.000997"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:02.370897" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:02.370297" elapsed="0.000649"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-29T01:09:02.371038" elapsed="0.000074"/>
</return>
<msg time="2026-08-29T01:09:02.371401" level="INFO">${index_list} = []</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-08-29T01:09:02.368164" elapsed="0.003307"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-08-29T01:09:02.371768" elapsed="0.000320"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:09:02.373099" level="INFO">${ds_type} = config</msg>
<var>${ds_type}</var>
<arg>'${shard_type}' != 'config'</arg>
<arg>operational</arg>
<arg>config</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:09:02.372427" elapsed="0.000722"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:02.373965" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:02.373498" elapsed="0.000516"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:02.374813" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:02.374327" elapsed="0.000535"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Get_Raft_State_Of_Shard_At_Member" owner="ClusterManagement">
<var>${raft_state}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${ds_type}</arg>
<arg>member_index=${index}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Send request to Jolokia on indexed member, return extracted Raft status.
Optionally, check restconf works.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:02.375717" elapsed="0.000048"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:02.376245" elapsed="0.000043"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:02.375928" elapsed="0.000427"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:02.376690" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:02.376403" elapsed="0.000389"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:02.377103" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:02.376837" elapsed="0.000492"/>
</branch>
<status status="NOT RUN" start="2026-08-29T01:09:02.375890" elapsed="0.001493"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-29T01:09:02.375374" elapsed="0.002079"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:02.374960" elapsed="0.002545"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-29T01:09:02.377585" elapsed="0.000056"/>
</return>
<msg time="2026-08-29T01:09:02.377975" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-29T01:09:02.378061" level="INFO">${follower_list} = []</msg>
<var>${leader_list}</var>
<var>${follower_list}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${shard_type}</arg>
<arg>validate=True</arg>
<arg>member_index_list=${member_index_list}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Return lists of Leader and Follower member indices from a given member index list
(or from the full list if empty). If ${shard_type} is not 'config', 'operational' is assumed.
If ${validate}, Fail if raft state is not Leader or Follower (for example on Candidate).
The biggest difference from Get_Leader_And_Followers_For_Shard
is that no check on number of Leaders is performed.</doc>
<status status="PASS" start="2026-08-29T01:09:02.366735" elapsed="0.011370"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-29T01:09:02.379032" level="INFO">Length is 0.</msg>
<msg time="2026-08-29T01:09:02.379207" level="INFO">${leader_count} = 0</msg>
<var>${leader_count}</var>
<arg>${leader_list}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-08-29T01:09:02.378484" elapsed="0.000772"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-29T01:09:02.380542" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-08-29T01:09:02.379856" elapsed="0.000869">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-29T01:09:02.379412" elapsed="0.001444">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-29T01:09:02.379354" elapsed="0.001562">No leader found.</status>
</if>
<kw name="Length Should Be" owner="BuiltIn">
<arg>${leader_list}</arg>
<arg>${1}</arg>
<arg>Too many Leaders.</arg>
<doc>Verifies that the length of the given item is correct.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:02.381247" elapsed="0.000044"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:02.381603" elapsed="0.000040"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:02.381730" elapsed="0.000030"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-08-29T01:09:02.360988" elapsed="0.020947">No leader found.</status>
</kw>
<kw name="Get_Leader_And_Followers_For_Shard" owner="ClusterManagement">
<kw name="Get_State_Info_For_Shard" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:09:03.391871" level="INFO">${return_list_reference} = []</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:09:03.390976" elapsed="0.000954"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:03.392874" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:03.392281" elapsed="0.000642"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-29T01:09:03.393013" elapsed="0.000073"/>
</return>
<msg time="2026-08-29T01:09:03.393363" level="INFO">${index_list} = []</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-08-29T01:09:03.390230" elapsed="0.003180"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-08-29T01:09:03.393728" elapsed="0.000312"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:09:03.395053" level="INFO">${ds_type} = config</msg>
<var>${ds_type}</var>
<arg>'${shard_type}' != 'config'</arg>
<arg>operational</arg>
<arg>config</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:09:03.394374" elapsed="0.000730"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:03.395931" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:03.395460" elapsed="0.000521"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:03.396783" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:03.396296" elapsed="0.000536"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Get_Raft_State_Of_Shard_At_Member" owner="ClusterManagement">
<var>${raft_state}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${ds_type}</arg>
<arg>member_index=${index}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Send request to Jolokia on indexed member, return extracted Raft status.
Optionally, check restconf works.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:03.397678" elapsed="0.000048"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:03.398167" elapsed="0.000071"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:03.397884" elapsed="0.000423"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:03.398650" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:03.398356" elapsed="0.000400"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:03.399095" elapsed="0.000059"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:03.398802" elapsed="0.000481"/>
</branch>
<status status="NOT RUN" start="2026-08-29T01:09:03.397849" elapsed="0.001495"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-29T01:09:03.397320" elapsed="0.002074"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:03.396928" elapsed="0.002626"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-29T01:09:03.399640" elapsed="0.000069"/>
</return>
<msg time="2026-08-29T01:09:03.400043" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-29T01:09:03.400130" level="INFO">${follower_list} = []</msg>
<var>${leader_list}</var>
<var>${follower_list}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${shard_type}</arg>
<arg>validate=True</arg>
<arg>member_index_list=${member_index_list}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Return lists of Leader and Follower member indices from a given member index list
(or from the full list if empty). If ${shard_type} is not 'config', 'operational' is assumed.
If ${validate}, Fail if raft state is not Leader or Follower (for example on Candidate).
The biggest difference from Get_Leader_And_Followers_For_Shard
is that no check on number of Leaders is performed.</doc>
<status status="PASS" start="2026-08-29T01:09:03.388773" elapsed="0.011400"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-29T01:09:03.401092" level="INFO">Length is 0.</msg>
<msg time="2026-08-29T01:09:03.401270" level="INFO">${leader_count} = 0</msg>
<var>${leader_count}</var>
<arg>${leader_list}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-08-29T01:09:03.400554" elapsed="0.000763"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-29T01:09:03.402488" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-08-29T01:09:03.401893" elapsed="0.000729">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-29T01:09:03.401472" elapsed="0.001272">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-29T01:09:03.401417" elapsed="0.001388">No leader found.</status>
</if>
<kw name="Length Should Be" owner="BuiltIn">
<arg>${leader_list}</arg>
<arg>${1}</arg>
<arg>Too many Leaders.</arg>
<doc>Verifies that the length of the given item is correct.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:03.403135" elapsed="0.000071"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:03.403518" elapsed="0.000041"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:03.403647" elapsed="0.000030"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-08-29T01:09:03.383022" elapsed="0.020824">No leader found.</status>
</kw>
<kw name="Get_Leader_And_Followers_For_Shard" owner="ClusterManagement">
<kw name="Get_State_Info_For_Shard" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:09:04.413565" level="INFO">${return_list_reference} = []</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:09:04.412696" elapsed="0.000928"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:04.414568" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:04.413940" elapsed="0.000679"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-29T01:09:04.414710" elapsed="0.000067"/>
</return>
<msg time="2026-08-29T01:09:04.415021" level="INFO">${index_list} = []</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-08-29T01:09:04.411925" elapsed="0.003143"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-08-29T01:09:04.415392" elapsed="0.000331"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:09:04.416744" level="INFO">${ds_type} = config</msg>
<var>${ds_type}</var>
<arg>'${shard_type}' != 'config'</arg>
<arg>operational</arg>
<arg>config</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:09:04.416028" elapsed="0.000767"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:04.417613" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:04.417092" elapsed="0.000571"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:04.418489" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:04.417964" elapsed="0.000576"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Get_Raft_State_Of_Shard_At_Member" owner="ClusterManagement">
<var>${raft_state}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${ds_type}</arg>
<arg>member_index=${index}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Send request to Jolokia on indexed member, return extracted Raft status.
Optionally, check restconf works.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:04.419359" elapsed="0.000047"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:04.419881" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:04.419588" elapsed="0.000399"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:04.420335" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:04.420035" elapsed="0.000428"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:04.420783" elapsed="0.000038"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:04.420511" elapsed="0.000369"/>
</branch>
<status status="NOT RUN" start="2026-08-29T01:09:04.419550" elapsed="0.001374"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-29T01:09:04.419002" elapsed="0.001969"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:04.418637" elapsed="0.002382"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-29T01:09:04.421093" elapsed="0.000055"/>
</return>
<msg time="2026-08-29T01:09:04.421619" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-29T01:09:04.421708" level="INFO">${follower_list} = []</msg>
<var>${leader_list}</var>
<var>${follower_list}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${shard_type}</arg>
<arg>validate=True</arg>
<arg>member_index_list=${member_index_list}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Return lists of Leader and Follower member indices from a given member index list
(or from the full list if empty). If ${shard_type} is not 'config', 'operational' is assumed.
If ${validate}, Fail if raft state is not Leader or Follower (for example on Candidate).
The biggest difference from Get_Leader_And_Followers_For_Shard
is that no check on number of Leaders is performed.</doc>
<status status="PASS" start="2026-08-29T01:09:04.410489" elapsed="0.011264"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-29T01:09:04.422678" level="INFO">Length is 0.</msg>
<msg time="2026-08-29T01:09:04.422825" level="INFO">${leader_count} = 0</msg>
<var>${leader_count}</var>
<arg>${leader_list}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-08-29T01:09:04.422076" elapsed="0.000794"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-29T01:09:04.424020" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-08-29T01:09:04.423475" elapsed="0.000672">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-29T01:09:04.423002" elapsed="0.001300">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-29T01:09:04.422967" elapsed="0.001397">No leader found.</status>
</if>
<kw name="Length Should Be" owner="BuiltIn">
<arg>${leader_list}</arg>
<arg>${1}</arg>
<arg>Too many Leaders.</arg>
<doc>Verifies that the length of the given item is correct.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:04.424680" elapsed="0.000042"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:04.425009" elapsed="0.000039"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:04.425133" elapsed="0.000030"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-08-29T01:09:04.404845" elapsed="0.020521">No leader found.</status>
</kw>
<kw name="Get_Leader_And_Followers_For_Shard" owner="ClusterManagement">
<kw name="Get_State_Info_For_Shard" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:09:05.437414" level="INFO">${return_list_reference} = []</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:09:05.436545" elapsed="0.000951"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:05.438420" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:05.437816" elapsed="0.000676"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-29T01:09:05.438583" elapsed="0.000070"/>
</return>
<msg time="2026-08-29T01:09:05.438900" level="INFO">${index_list} = []</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-08-29T01:09:05.435763" elapsed="0.003186"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-08-29T01:09:05.439274" elapsed="0.000360"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:09:05.440660" level="INFO">${ds_type} = config</msg>
<var>${ds_type}</var>
<arg>'${shard_type}' != 'config'</arg>
<arg>operational</arg>
<arg>config</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:09:05.439946" elapsed="0.000766"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:05.441579" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:05.441016" elapsed="0.000615"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:05.442413" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:05.441914" elapsed="0.000572"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Get_Raft_State_Of_Shard_At_Member" owner="ClusterManagement">
<var>${raft_state}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${ds_type}</arg>
<arg>member_index=${index}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Send request to Jolokia on indexed member, return extracted Raft status.
Optionally, check restconf works.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:05.443291" elapsed="0.000049"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:05.443800" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:05.443519" elapsed="0.000386"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:05.444248" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:05.443954" elapsed="0.000399"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:05.444693" elapsed="0.000039"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:05.444397" elapsed="0.000394"/>
</branch>
<status status="NOT RUN" start="2026-08-29T01:09:05.443480" elapsed="0.001359"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-29T01:09:05.442941" elapsed="0.001964"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:05.442581" elapsed="0.002386"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-29T01:09:05.445045" elapsed="0.000056"/>
</return>
<msg time="2026-08-29T01:09:05.445479" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-29T01:09:05.445568" level="INFO">${follower_list} = []</msg>
<var>${leader_list}</var>
<var>${follower_list}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${shard_type}</arg>
<arg>validate=True</arg>
<arg>member_index_list=${member_index_list}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Return lists of Leader and Follower member indices from a given member index list
(or from the full list if empty). If ${shard_type} is not 'config', 'operational' is assumed.
If ${validate}, Fail if raft state is not Leader or Follower (for example on Candidate).
The biggest difference from Get_Leader_And_Followers_For_Shard
is that no check on number of Leaders is performed.</doc>
<status status="PASS" start="2026-08-29T01:09:05.433969" elapsed="0.011643"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-29T01:09:05.446631" level="INFO">Length is 0.</msg>
<msg time="2026-08-29T01:09:05.446779" level="INFO">${leader_count} = 0</msg>
<var>${leader_count}</var>
<arg>${leader_list}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-08-29T01:09:05.446036" elapsed="0.000788"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-29T01:09:05.448027" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-08-29T01:09:05.447405" elapsed="0.000760">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-29T01:09:05.446954" elapsed="0.001409">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-29T01:09:05.446920" elapsed="0.001511">No leader found.</status>
</if>
<kw name="Length Should Be" owner="BuiltIn">
<arg>${leader_list}</arg>
<arg>${1}</arg>
<arg>Too many Leaders.</arg>
<doc>Verifies that the length of the given item is correct.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:05.448793" elapsed="0.000057"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:05.449175" elapsed="0.000076"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:05.449343" elapsed="0.000031"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-08-29T01:09:05.426477" elapsed="0.023119">No leader found.</status>
</kw>
<kw name="Get_Leader_And_Followers_For_Shard" owner="ClusterManagement">
<kw name="Get_State_Info_For_Shard" owner="ClusterManagement">
<kw name="List_Indices_Or_All" owner="ClusterManagement">
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:09:06.459305" level="INFO">${return_list_reference} = []</msg>
<var>${return_list_reference}</var>
<arg>"""${given_list}""" != ""</arg>
<arg>${given_list}</arg>
<arg>${ClusterManagement__member_index_list}</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:09:06.458411" elapsed="0.000952"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:06.460313" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:06.459705" elapsed="0.000659"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-29T01:09:06.460475" elapsed="0.000070"/>
</return>
<msg time="2026-08-29T01:09:06.460796" level="INFO">${index_list} = []</msg>
<var>${index_list}</var>
<arg>given_list=${member_index_list}</arg>
<doc>Utility to allow ${EMPTY} as default argument value, as the internal list is computed at runtime.
This keyword always returns a (shallow) copy of given or default list,
so operations with the returned list should not affect other lists.
Also note that this keyword does not consider empty list to be ${EMPTY}.</doc>
<status status="PASS" start="2026-08-29T01:09:06.457641" elapsed="0.003202"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-08-29T01:09:06.461143" elapsed="0.000364"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-29T01:09:06.462523" level="INFO">${ds_type} = config</msg>
<var>${ds_type}</var>
<arg>'${shard_type}' != 'config'</arg>
<arg>operational</arg>
<arg>config</arg>
<doc>Sets variable based on the given condition.</doc>
<status status="PASS" start="2026-08-29T01:09:06.461818" elapsed="0.000756"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:06.463375" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:06.462876" elapsed="0.000550"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-29T01:09:06.464224" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-29T01:09:06.463734" elapsed="0.000540"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Get_Raft_State_Of_Shard_At_Member" owner="ClusterManagement">
<var>${raft_state}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${ds_type}</arg>
<arg>member_index=${index}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Send request to Jolokia on indexed member, return extracted Raft status.
Optionally, check restconf works.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.465086" elapsed="0.000047"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.465624" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:06.465321" elapsed="0.000411"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.466047" elapsed="0.000039"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:06.465779" elapsed="0.000371"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.466529" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-08-29T01:09:06.466225" elapsed="0.000406"/>
</branch>
<status status="NOT RUN" start="2026-08-29T01:09:06.465284" elapsed="0.001391"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-29T01:09:06.464765" elapsed="0.001956"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:06.464370" elapsed="0.002400"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-29T01:09:06.466843" elapsed="0.000053"/>
</return>
<msg time="2026-08-29T01:09:06.467257" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-29T01:09:06.467345" level="INFO">${follower_list} = []</msg>
<var>${leader_list}</var>
<var>${follower_list}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${shard_type}</arg>
<arg>validate=True</arg>
<arg>member_index_list=${member_index_list}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Return lists of Leader and Follower member indices from a given member index list
(or from the full list if empty). If ${shard_type} is not 'config', 'operational' is assumed.
If ${validate}, Fail if raft state is not Leader or Follower (for example on Candidate).
The biggest difference from Get_Leader_And_Followers_For_Shard
is that no check on number of Leaders is performed.</doc>
<status status="PASS" start="2026-08-29T01:09:06.456115" elapsed="0.011274"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-29T01:09:06.468468" level="INFO">Length is 0.</msg>
<msg time="2026-08-29T01:09:06.468620" level="INFO">${leader_count} = 0</msg>
<var>${leader_count}</var>
<arg>${leader_list}</arg>
<doc>Returns and logs the length of the given item as an integer.</doc>
<status status="PASS" start="2026-08-29T01:09:06.467880" elapsed="0.000784"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-29T01:09:06.469818" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-08-29T01:09:06.469253" elapsed="0.000696">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-29T01:09:06.468795" elapsed="0.001275">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-29T01:09:06.468760" elapsed="0.001370">No leader found.</status>
</if>
<kw name="Length Should Be" owner="BuiltIn">
<arg>${leader_list}</arg>
<arg>${1}</arg>
<arg>Too many Leaders.</arg>
<doc>Verifies that the length of the given item is correct.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.470481" elapsed="0.000043"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.470816" elapsed="0.000040"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:06.470943" elapsed="0.000030"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-08-29T01:09:06.450571" elapsed="0.020574">No leader found.</status>
</kw>
<msg time="2026-08-29T01:09:06.471357" level="FAIL">Keyword 'ClusterManagement.Get_Leader_And_Followers_For_Shard' failed after retrying for 10 seconds. The last error was: No leader found.</msg>
<var>${inv_conf_leader}</var>
<var>${inv_conf_followers_list}</var>
<arg>10s</arg>
<arg>1s</arg>
<arg>ClusterManagement.Get_Leader_And_Followers_For_Shard</arg>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="FAIL" start="2026-08-29T01:08:56.238232" elapsed="10.233361">Keyword 'ClusterManagement.Get_Leader_And_Followers_For_Shard' failed after retrying for 10 seconds. The last error was: No leader found.</status>
</kw>
<kw name="Log" owner="BuiltIn">
<arg>config inventory Leader is ${inv_conf_leader} and followers are ${inv_conf_followers_list}</arg>
<doc>Logs the given message with the given level.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.471993" elapsed="0.000040"/>
</kw>
<return>
<value>${inv_conf_leader}</value>
<value>${inv_conf_followers_list}</value>
<status status="NOT RUN" start="2026-08-29T01:09:06.472112" elapsed="0.000029"/>
</return>
<var>${inventory_leader}</var>
<var>${inventory_followers}</var>
<doc>Check Status for Inventory Config shard in OpenFlow application.</doc>
<status status="FAIL" start="2026-08-29T01:08:56.236064" elapsed="10.236269">Keyword 'ClusterManagement.Get_Leader_And_Followers_For_Shard' failed after retrying for 10 seconds. The last error was: No leader found.</status>
</kw>
<kw name="Get From List" owner="Collections">
<var>${Follower_Node_1}</var>
<arg>${Inventory_Followers}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.472750" elapsed="0.000042"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${Follower_Node_2}</var>
<arg>${Inventory_Followers}</arg>
<arg>1</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.473118" elapsed="0.000039"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>${\n}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.473501" elapsed="0.000042"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The follower Node1 is ${Follower_Node_1}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.473816" elapsed="0.000038"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The follower Node2 is ${Follower_Node_2}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.474145" elapsed="0.000077"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The leader Node is ${Inventory_Leader}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.474514" elapsed="0.000038"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Follower_Node_1}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.474841" elapsed="0.000038"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Follower_Node_2}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.475163" elapsed="0.000067"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Inventory_Leader}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.475560" elapsed="0.000040"/>
</kw>
<doc>Find a leader and followers in the inventory config shard</doc>
<status status="FAIL" start="2026-08-29T01:08:56.235548" elapsed="10.240320">Keyword 'ClusterManagement.Get_Leader_And_Followers_For_Shard' failed after retrying for 10 seconds. The last error was: No leader found.</status>
</test>
<test id="s1-t3" name="Start Mininet Connect To Follower Node1" line="66">
<kw name="Start Mininet Single Controller" owner="MininetKeywords">
<msg time="2026-08-29T01:09:06.486244" level="FAIL">Variable '${Follower_Node_1}' not found.</msg>
<var>${mininet_conn_id}</var>
<arg>${TOOLS_SYSTEM_IP}</arg>
<arg>${ODL_SYSTEM_${Follower_Node_1}_IP}</arg>
<arg>--topo linear,${switch_count}</arg>
<doc>Start Mininet with custom topology and connect to controller.</doc>
<status status="FAIL" start="2026-08-29T01:09:06.477557" elapsed="0.008768">Variable '${Follower_Node_1}' not found.</status>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.486695" elapsed="0.000043"/>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<arg>${mininet_timeout}</arg>
<arg>2s</arg>
<arg>ClusterOpenFlow.Verify_Switch_Connections_Running_On_Member</arg>
<arg>${switch_count}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.487026" elapsed="0.000040"/>
</kw>
<doc>Start mininet with connection to follower node1.</doc>
<status status="FAIL" start="2026-08-29T01:09:06.476352" elapsed="0.010998">Variable '${Follower_Node_1}' not found.</status>
</test>
<test id="s1-t4" name="Add Bulk Flow From Follower Node2" line="80">
<kw name="Get Current Date" owner="DateTime">
<msg time="2026-08-29T01:09:06.489257" level="INFO">${config_datastore_write_start_time} = 2026-08-29 01:09:06.489</msg>
<var>${config_datastore_write_start_time}</var>
<arg>result_format=timestamp</arg>
<doc>Returns current local or UTC time with an optional increment.</doc>
<status status="PASS" start="2026-08-29T01:09:06.488741" elapsed="0.000570"/>
</kw>
<kw name="Add Bulk Flow In Node" owner="BulkomaticKeywords">
<msg time="2026-08-29T01:09:06.502384" level="FAIL">Variable '${temp_json_config_add}' not found.</msg>
<arg>${temp_json_config_add}</arg>
<arg>${Follower_Node_2}</arg>
<arg>${operation_timeout}</arg>
<doc>Add Bulk Flow in member ${controller_index} and wait until operation is completed.</doc>
<status status="FAIL" start="2026-08-29T01:09:06.497033" elapsed="0.005398">Variable '${temp_json_config_add}' not found.</status>
</kw>
<kw name="Get Current Date" owner="DateTime">
<var>${config_datastore_write_end_time}</var>
<arg>result_format=timestamp</arg>
<doc>Returns current local or UTC time with an optional increment.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.502654" elapsed="0.000027"/>
</kw>
<kw name="Subtract Date From Date" owner="DateTime">
<var>${config_datastore_write_time}</var>
<arg>${config_datastore_write_end_time}</arg>
<arg>${config_datastore_write_start_time}</arg>
<doc>Subtracts date from another date and returns time between.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.502862" elapsed="0.000025"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${config_datastore_write_rate}</var>
<arg>${flow_count_after_add} / ${config_datastore_write_time}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.503068" elapsed="0.000024"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_write_start_time}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.503298" elapsed="0.000025"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>${\n}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.503508" elapsed="0.000025"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The config_datastore_write_time is ${config_datastore_write_time}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.503702" elapsed="0.000024"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The config_datastore_write_rate is ${config_datastore_write_rate}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.503891" elapsed="0.000024"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_write_time}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.504091" elapsed="0.000023"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_write_rate}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.504313" elapsed="0.000024"/>
</kw>
<doc>100K Flows (1K Flows per DPN) in 100 DPN added via Follower Node2 and verify it gets applied in all instances.</doc>
<status status="FAIL" start="2026-08-29T01:09:06.487732" elapsed="0.016771">Variable '${temp_json_config_add}' not found.</status>
</test>
<test id="s1-t5" name="Verify Flows In Switch" line="96">
<kw name="Get Current Date" owner="DateTime">
<msg time="2026-08-29T01:09:06.505500" level="INFO">${Mininet_write_start_time} = 2026-08-29 01:09:06.505</msg>
<var>${Mininet_write_start_time}</var>
<arg>result_format=timestamp</arg>
<doc>Returns current local or UTC time with an optional increment.</doc>
<status status="PASS" start="2026-08-29T01:09:06.505217" elapsed="0.000315"/>
</kw>
<kw name="Verify Aggregate Flow From Mininet Session" owner="MininetKeywords">
<msg time="2026-08-29T01:09:06.510849" level="FAIL">Variable '${mininet_conn_id}' not found.</msg>
<arg>${mininet_conn_id}</arg>
<arg>${flow_count_after_add}</arg>
<arg>${operation_timeout}</arg>
<doc>Verify flow count per switch</doc>
<status status="FAIL" start="2026-08-29T01:09:06.505772" elapsed="0.005123">Variable '${mininet_conn_id}' not found.</status>
</kw>
<kw name="Get Current Date" owner="DateTime">
<var>${Mininet_write_end_time}</var>
<arg>result_format=timestamp</arg>
<doc>Returns current local or UTC time with an optional increment.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.511097" elapsed="0.000026"/>
</kw>
<kw name="Subtract Date From Date" owner="DateTime">
<var>${Mininet_write_time}</var>
<arg>${Mininet_write_end_time}</arg>
<arg>${config_datastore_write_start_time}</arg>
<doc>Subtracts date from another date and returns time between.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.511319" elapsed="0.000025"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${Mininet_write_rate}</var>
<arg>${flow_count_after_add} / ${Mininet_write_time}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.511540" elapsed="0.000024"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>${\n}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.511737" elapsed="0.000024"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The Mininet_write_time is ${Mininet_write_time}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.511925" elapsed="0.000023"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The Mininet_write_rate is ${Mininet_write_rate}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.512112" elapsed="0.000023"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Mininet_write_time}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.512332" elapsed="0.000024"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Mininet_write_rate}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:09:06.512547" elapsed="0.000025"/>
</kw>
<doc>Verify 100K flows are installed in 10 switches.</doc>
<status status="FAIL" start="2026-08-29T01:09:06.504735" elapsed="0.007983">Variable '${mininet_conn_id}' not found.</status>
</test>
<test id="s1-t6" name="Verify Flows In Oper DS" line="114">
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:06.523050" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:06.519019" elapsed="0.004064">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:08.542784" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:08.533643" elapsed="0.009236">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:10.560466" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:10.551961" elapsed="0.008594">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:12.577991" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:12.569527" elapsed="0.008555">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:14.595799" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:14.587395" elapsed="0.008495">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:16.613061" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:16.604638" elapsed="0.008508">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:18.630503" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:18.622096" elapsed="0.008496">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:20.648247" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:20.639354" elapsed="0.008990">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:22.666092" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:22.657417" elapsed="0.008794">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:24.683613" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:24.675204" elapsed="0.008498">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:26.700996" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:26.692591" elapsed="0.008494">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:28.718567" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:28.710087" elapsed="0.008728">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:30.737595" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:30.728444" elapsed="0.009243">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:32.754866" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:32.746493" elapsed="0.008463">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:34.772759" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:34.764284" elapsed="0.008569">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:36.790265" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:36.781605" elapsed="0.008750">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:38.807783" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:38.799126" elapsed="0.008747">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:40.826916" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:40.817306" elapsed="0.009743">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:42.845641" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:42.836149" elapsed="0.009588">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:44.853689" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:44.849934" elapsed="0.003802">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:46.871462" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:46.862620" elapsed="0.009041">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:48.890146" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:48.881348" elapsed="0.008922">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:50.908941" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:50.899637" elapsed="0.009412">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:52.927399" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:52.918444" elapsed="0.009048">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:54.944732" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:54.936327" elapsed="0.008498">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:56.964247" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:56.954516" elapsed="0.009832">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:09:58.981488" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:09:58.973090" elapsed="0.008488">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:01.003909" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:00.991823" elapsed="0.012208">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:03.021549" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:03.013012" elapsed="0.008634">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:05.038880" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:05.030490" elapsed="0.008481">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:07.056853" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:07.047597" elapsed="0.009345">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:09.074507" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:09.065837" elapsed="0.008759">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:11.091908" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:11.083409" elapsed="0.008592">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:13.109635" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:13.100772" elapsed="0.008953">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:15.127347" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:15.118896" elapsed="0.008541">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:17.135471" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:17.131673" elapsed="0.003851">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:19.152779" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:19.144417" elapsed="0.008452">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:21.170202" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:21.161650" elapsed="0.008756">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:23.188045" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:23.179323" elapsed="0.008810">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:25.205308" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:25.196933" elapsed="0.008463">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:27.223086" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:27.214723" elapsed="0.008452">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:29.240670" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:29.232289" elapsed="0.008470">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:31.258098" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:31.249659" elapsed="0.008550">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:33.275702" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:33.266962" elapsed="0.008841">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:35.293638" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:35.285167" elapsed="0.008561">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:37.311207" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:37.302490" elapsed="0.008810">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:39.329235" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:39.320208" elapsed="0.009121">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:41.337443" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:41.333638" elapsed="0.003862">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:43.354666" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:43.346245" elapsed="0.008529">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:45.372266" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:45.363683" elapsed="0.008680">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:47.389416" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:47.381057" elapsed="0.008451">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:49.409716" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:49.400127" elapsed="0.009689">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:51.427353" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:51.418635" elapsed="0.008812">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:53.446409" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:53.437673" elapsed="0.008850">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:55.463714" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:55.454568" elapsed="0.009275">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:57.475396" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:57.470035" elapsed="0.005434">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:10:59.493643" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:10:59.484846" elapsed="0.008902">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:01.511824" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:01.503090" elapsed="0.008840">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:03.530092" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:03.521372" elapsed="0.008852">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:05.549161" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:05.539476" elapsed="0.009812">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:07.567379" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:07.558689" elapsed="0.008797">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:09.586298" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:09.577073" elapsed="0.009340">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:11.605652" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:11.596275" elapsed="0.009484">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:13.623551" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:13.615059" elapsed="0.008594">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:15.645520" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:15.635780" elapsed="0.009860">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:17.663226" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:17.654664" elapsed="0.008662">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:19.682003" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:19.673145" elapsed="0.008968">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:21.699824" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:21.691118" elapsed="0.008805">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:23.717518" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:23.708975" elapsed="0.008638">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:25.735553" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:25.726785" elapsed="0.008868">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:27.753546" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:27.745018" elapsed="0.008628">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:29.771950" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:29.763289" elapsed="0.008792">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:31.791282" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:31.781842" elapsed="0.009555">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:33.809162" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:33.800617" elapsed="0.008675">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:35.827674" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:35.818954" elapsed="0.008841">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:37.845546" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:37.836997" elapsed="0.008651">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:39.862562" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:39.854227" elapsed="0.008419">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:41.880575" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:41.871874" elapsed="0.008804">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:43.898708" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:43.889943" elapsed="0.008888">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:45.919415" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:45.909789" elapsed="0.009740">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:47.937129" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:47.928710" elapsed="0.008540">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:49.955740" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:49.946641" elapsed="0.009212">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:51.973978" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:51.965106" elapsed="0.008977">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:53.993617" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:53.984372" elapsed="0.009374">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:56.012101" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:56.003378" elapsed="0.008865">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:11:58.031161" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:11:58.021816" elapsed="0.009481">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:00.049881" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:00.041149" elapsed="0.008864">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:02.068636" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:02.059832" elapsed="0.008923">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:04.087153" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:04.078330" elapsed="0.008975">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:06.107340" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:06.098315" elapsed="0.009168">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:08.126061" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:08.117292" elapsed="0.008916">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:10.144351" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:10.135849" elapsed="0.008630">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:12.162899" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:12.154436" elapsed="0.008571">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:14.183511" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:14.173678" elapsed="0.009957">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:16.201481" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:16.193024" elapsed="0.008558">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:18.220089" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:18.211318" elapsed="0.008914">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:20.238903" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:20.230075" elapsed="0.008947">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:22.247967" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:22.244031" elapsed="0.004009">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:24.266203" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:24.257236" elapsed="0.009070">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:26.283966" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:26.275468" elapsed="0.008599">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:28.295984" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:28.290555" elapsed="0.005516">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:30.313969" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:30.305167" elapsed="0.008909">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:32.331929" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:32.323379" elapsed="0.008653">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:34.349742" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:34.341301" elapsed="0.008543">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:36.367512" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:36.359035" elapsed="0.008576">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:38.386874" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:38.377972" elapsed="0.009011">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:40.405113" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:40.396422" elapsed="0.008824">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:42.423927" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:42.415127" elapsed="0.008917">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:44.442082" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:44.433274" elapsed="0.008956">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:46.459818" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:46.451434" elapsed="0.008486">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:48.478423" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:48.469748" elapsed="0.008788">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:50.497028" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:50.487917" elapsed="0.009212">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:52.514722" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:52.506116" elapsed="0.008731">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:54.533017" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:54.524409" elapsed="0.008719">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:56.550450" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:56.541954" elapsed="0.008586">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:12:58.568678" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:12:58.559951" elapsed="0.008826">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:00.585875" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:00.577541" elapsed="0.008421">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:02.603417" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:02.594909" elapsed="0.008600">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:04.621763" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:04.612865" elapsed="0.009003">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:06.640705" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:06.631547" elapsed="0.009250">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:08.658707" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:08.649659" elapsed="0.009166">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:10.676571" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:10.668146" elapsed="0.008513">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:12.694292" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:12.685908" elapsed="0.008475">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:14.711727" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:14.703289" elapsed="0.008527">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:16.730095" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:16.720598" elapsed="0.009710">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:18.747822" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:18.739333" elapsed="0.008577">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:20.755919" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:20.752184" elapsed="0.003782">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:22.773892" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:22.765453" elapsed="0.008538">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:24.791285" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:24.782851" elapsed="0.008527">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:26.808457" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:26.800043" elapsed="0.008503">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:28.827322" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:28.818311" elapsed="0.009139">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:30.845568" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:30.836875" elapsed="0.008792">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:32.862986" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:32.854618" elapsed="0.008458">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:34.880687" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:34.872250" elapsed="0.008526">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:36.897960" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:36.889496" elapsed="0.008554">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:38.916016" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:38.907517" elapsed="0.008590">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:40.933408" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:40.925042" elapsed="0.008474">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:42.951296" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:42.942148" elapsed="0.009241">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:44.968910" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:44.960399" elapsed="0.008601">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:46.986512" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:46.977979" elapsed="0.008622">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:49.003835" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:48.995466" elapsed="0.008459">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:51.021359" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:51.012894" elapsed="0.008574">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:53.038575" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:53.030237" elapsed="0.008426">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:55.047039" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:55.043324" elapsed="0.003763">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:57.064681" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:57.056261" elapsed="0.008505">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:13:59.082609" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:13:59.073895" elapsed="0.008807">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:01.099832" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:01.091460" elapsed="0.008460">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:03.117042" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:03.108685" elapsed="0.008447">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:05.134537" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:05.125968" elapsed="0.008659">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:07.152707" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:07.144275" elapsed="0.008525">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:09.171066" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:09.162144" elapsed="0.009016">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:11.188997" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:11.180235" elapsed="0.008860">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:13.206465" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:13.197950" elapsed="0.008610">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:15.214620" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:15.210861" elapsed="0.003807">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:17.232078" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:17.223645" elapsed="0.008520">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:19.240171" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:19.236298" elapsed="0.003952">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:21.252197" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:21.246482" elapsed="0.005786">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:23.269889" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:23.261469" elapsed="0.008508">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:25.287105" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:25.278675" elapsed="0.008545">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:27.304554" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:27.296136" elapsed="0.008509">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:29.321862" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:29.313481" elapsed="0.008469">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:31.339165" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:31.330689" elapsed="0.008615">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:33.356437" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:33.348065" elapsed="0.008458">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:35.374141" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:35.365356" elapsed="0.008911">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:37.391600" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:37.383096" elapsed="0.008592">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:39.408838" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:39.400453" elapsed="0.008476">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:41.425855" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:41.417549" elapsed="0.008390">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:43.443507" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:43.434913" elapsed="0.008687">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:45.460746" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:45.452420" elapsed="0.008416">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:47.478062" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:47.469615" elapsed="0.008558">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:49.496062" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:49.487714" elapsed="0.008453">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:51.513532" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:51.505027" elapsed="0.008594">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:53.532360" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:53.522931" elapsed="0.009544">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:55.550221" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:55.541617" elapsed="0.008699">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:57.567542" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:57.559118" elapsed="0.008514">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:14:59.584967" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:14:59.576610" elapsed="0.008467">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:01.602615" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:01.593830" elapsed="0.008874">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:03.620648" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:03.612218" elapsed="0.008523">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:05.637847" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:05.629470" elapsed="0.008465">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:07.648758" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:07.643610" elapsed="0.005208">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:09.666659" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:09.657963" elapsed="0.008801">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:11.686025" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:11.677355" elapsed="0.008781">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:13.703451" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:13.694957" elapsed="0.008584">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:15.723330" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:15.713760" elapsed="0.009670">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:17.741002" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:17.732488" elapsed="0.008606">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:19.758792" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:19.750114" elapsed="0.008771">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:21.775976" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:21.767621" elapsed="0.008441">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:23.794922" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:23.785695" elapsed="0.009330">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:25.808476" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:25.802161" elapsed="0.006386">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:27.826260" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:27.817427" elapsed="0.008923">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:29.843977" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:29.835312" elapsed="0.008756">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:31.861220" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:31.852806" elapsed="0.008511">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:33.887506" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:33.874452" elapsed="0.013212">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:35.906800" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:35.897400" elapsed="0.009501">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:37.924500" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:37.915820" elapsed="0.008783">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:39.944640" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:39.935844" elapsed="0.008913">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:41.962637" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:41.954156" elapsed="0.008586">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:43.980020" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:43.971564" elapsed="0.008543">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:45.997405" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:45.989048" elapsed="0.008444">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-29T01:15:48.014589" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-08-29T01:15:48.006212" elapsed="0.008485">Variable '${flow_count_after_add}' not found.</status>
</kw>
<msg time="2026-08-29T01:15:48.014895" level="FAIL">Keyword 'ClusterOpenFlow.Check_Flows_Operational_Datastore_On_Member' failed after retrying for 6 minutes 40 seconds. The last error was: Variable '${flow_count_after_add}' not found.</msg>
<arg>${oper_ds_timeout}</arg>
<arg>2s</arg>
<arg>ClusterOpenFlow.Check_Flows_Operational_Datastore_On_Member</arg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="FAIL" start="2026-08-29T01:09:06.513436" elapsed="401.501833">Keyword 'ClusterOpenFlow.Check_Flows_Operational_Datastore_On_Member' failed after retrying for 6 minutes 40 seconds. The last error was: Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Get Current Date" owner="DateTime">
<var>${oper_datastore_write_end_time}</var>
<arg>result_format=timestamp</arg>
<doc>Returns current local or UTC time with an optional increment.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.015662" elapsed="0.000046"/>
</kw>
<kw name="Subtract Date From Date" owner="DateTime">
<var>${oper_datastore_write_time}</var>
<arg>${oper_datastore_write_end_time}</arg>
<arg>${config_datastore_write_start_time}</arg>
<doc>Subtracts date from another date and returns time between.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.016001" elapsed="0.000040"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${oper_datastore_write_rate}</var>
<arg>${flow_count_after_add} / ${oper_datastore_write_time}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.016364" elapsed="0.000040"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>${\n}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.016704" elapsed="0.000039"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The oper_datastore_write_time is ${oper_datastore_write_time}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.017014" elapsed="0.000059"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The oper_datastore_write_rate is ${oper_datastore_write_rate}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.017374" elapsed="0.000039"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${oper_datastore_write_time}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.017727" elapsed="0.000040"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${oper_datastore_write_rate}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.018052" elapsed="0.000039"/>
</kw>
<doc>Check Flows in Operational Datastore</doc>
<status status="FAIL" start="2026-08-29T01:09:06.512940" elapsed="401.505447">Keyword 'ClusterOpenFlow.Check_Flows_Operational_Datastore_On_Member' failed after retrying for 6 minutes 40 seconds. The last error was: Variable '${flow_count_after_add}' not found.</status>
</test>
<test id="s1-t7" name="Stop Mininet Connected To Follower Node1 After Reconcilliation" line="133">
<kw name="Stop Mininet And Exit" owner="MininetKeywords">
<msg time="2026-08-29T01:15:48.036337" level="FAIL">Variable '${mininet_conn_id}' not found.</msg>
<arg>${mininet_conn_id}</arg>
<doc>Stops Mininet and exits session ${mininet_conn}</doc>
<status status="FAIL" start="2026-08-29T01:15:48.028301" elapsed="0.008112">Variable '${mininet_conn_id}' not found.</status>
</kw>
<kw name="Wait Until Keyword Succeeds" owner="BuiltIn">
<arg>${mininet_timeout}</arg>
<arg>2s</arg>
<arg>ClusterOpenFlow.Verify_Switch_Connections_Running_On_Member</arg>
<arg>0</arg>
<arg>${Inventory_Leader}</arg>
<doc>Runs the specified keyword and retries if it fails.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.036770" elapsed="0.000044"/>
</kw>
<doc>Stop mininet and exit connection.</doc>
<status status="FAIL" start="2026-08-29T01:15:48.018918" elapsed="0.018154">Variable '${mininet_conn_id}' not found.</status>
</test>
<test id="s1-t8" name="Delete All Flows From Follower Node2" line="143">
<kw name="Get Current Date" owner="DateTime">
<msg time="2026-08-29T01:15:48.039366" level="INFO">${config_datastore_delete_start_time} = 2026-08-29 01:15:48.039</msg>
<var>${config_datastore_delete_start_time}</var>
<arg>result_format=timestamp</arg>
<doc>Returns current local or UTC time with an optional increment.</doc>
<status status="PASS" start="2026-08-29T01:15:48.038829" elapsed="0.000591"/>
</kw>
<kw name="Delete Bulk Flow In Node" owner="BulkomaticKeywords">
<msg time="2026-08-29T01:15:48.051661" level="FAIL">Variable '${temp_json_config_del}' not found.</msg>
<arg>${temp_json_config_del}</arg>
<arg>${Follower_Node_2}</arg>
<arg>${operation_timeout}</arg>
<doc>Delete Bulk Flow in member ${controller_index} and wait until operation is completed.</doc>
<status status="FAIL" start="2026-08-29T01:15:48.046457" elapsed="0.005258">Variable '${temp_json_config_del}' not found.</status>
</kw>
<kw name="Get Current Date" owner="DateTime">
<var>${config_datastore_delete_end_time}</var>
<arg>result_format=timestamp</arg>
<doc>Returns current local or UTC time with an optional increment.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.051945" elapsed="0.000027"/>
</kw>
<kw name="Subtract Date From Date" owner="DateTime">
<var>${config_datastore_delete_time}</var>
<arg>${config_datastore_delete_end_time}</arg>
<arg>${config_datastore_delete_start_time}</arg>
<doc>Subtracts date from another date and returns time between.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.052202" elapsed="0.000027"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${config_datastore_delete_rate}</var>
<arg>${flow_count_after_add} / ${config_datastore_delete_time}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.052430" elapsed="0.000025"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>${\n}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.052631" elapsed="0.000040"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The config_datastore_delete_time is ${config_datastore_delete_time}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.052842" elapsed="0.000028"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The config_datastore_delete_rate is ${config_datastore_delete_rate}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.053039" elapsed="0.000024"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_delete_time}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.053263" elapsed="0.000025"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_delete_rate}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.053467" elapsed="0.000024"/>
</kw>
<doc>100K Flows deleted via Follower Node2 and verify it gets applied in all instances.</doc>
<status status="FAIL" start="2026-08-29T01:15:48.037719" elapsed="0.015944">Variable '${temp_json_config_del}' not found.</status>
</test>
<test id="s1-t9" name="Log Results And Determine Status" line="161">
<kw name="Append To File" owner="OperatingSystem">
<msg time="2026-08-29T01:15:48.054992" level="INFO" html="true">Appended to file '&lt;a href="file:///w/workspace/openflowplugin-csit-3node-clustering-perf-bulkomatic-only-titanium/rate.csv"&gt;/w/workspace/openflowplugin-csit-3node-clustering-perf-bulkomatic-only-titanium/rate.csv&lt;/a&gt;'.</msg>
<arg>${rate_results_file}</arg>
<arg>Config DS,OVS Switch,Operational DS\n</arg>
<doc>Appends the given content to the specified file.</doc>
<status status="PASS" start="2026-08-29T01:15:48.054514" elapsed="0.000551"/>
</kw>
<kw name="Append To File" owner="OperatingSystem">
<msg time="2026-08-29T01:15:48.060488" level="FAIL">Variable '${config_datastore_write_rate}' not found.</msg>
<arg>${rate_results_file}</arg>
<arg>${config_datastore_write_rate},${Mininet_write_rate},${oper_datastore_write_rate}\n</arg>
<doc>Appends the given content to the specified file.</doc>
<status status="FAIL" start="2026-08-29T01:15:48.055274" elapsed="0.005262">Variable '${config_datastore_write_rate}' not found.</status>
</kw>
<kw name="Append To File" owner="OperatingSystem">
<arg>${time_results_file}</arg>
<arg>Config DS,OVS Switch,Operational DS\n</arg>
<doc>Appends the given content to the specified file.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.060754" elapsed="0.000028"/>
</kw>
<kw name="Append To File" owner="OperatingSystem">
<arg>${time_results_file}</arg>
<arg>${config_datastore_write_time},${Mininet_write_time},${oper_datastore_write_time}\n</arg>
<doc>Appends the given content to the specified file.</doc>
<status status="NOT RUN" start="2026-08-29T01:15:48.060960" elapsed="0.000025"/>
</kw>
<doc>Log results for plotting.</doc>
<status status="FAIL" start="2026-08-29T01:15:48.054012" elapsed="0.007119">Variable '${config_datastore_write_rate}' not found.</status>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-08-29T01:15:48.062100" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-29T01:15:48.061996" elapsed="0.000169"/>
</kw>
<doc>Test suite for 3Node Cluster - 100K flows and 10 DPNs in Cluster Scale Up scenario</doc>
<status status="FAIL" start="2026-08-29T01:08:55.523118" elapsed="412.539108"/>
</suite>
<statistics>
<total>
<stat pass="0" fail="9" skip="0">All Tests</stat>
</total>
<tag>
</tag>
<suite>
<stat name="openflowplugin-clustering-perf-bulkomatic.txt" id="s1" pass="0" fail="9" skip="0">openflowplugin-clustering-perf-bulkomatic.txt</stat>
</suite>
</statistics>
<errors>
</errors>
</robot>
