<?xml version="1.0" encoding="UTF-8"?>
<robot generator="Robot 7.4.2 (Python 3.11.10 on linux)" generated="2026-08-14T01:04:30.981516" 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-14T01:04:31.692991" 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-14T01:04:31.689152" elapsed="0.003882"/>
</kw>
<if>
<branch type="IF" condition="${already_done}">
<return>
<status status="NOT RUN" start="2026-08-14T01:04:31.693294" elapsed="0.000021"/>
</return>
<status status="NOT RUN" start="2026-08-14T01:04:31.693155" elapsed="0.000192"/>
</branch>
<status status="PASS" start="2026-08-14T01:04:31.693122" elapsed="0.000251"/>
</if>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.693911" 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-14T01:04:31.693539" elapsed="0.000421"/>
</kw>
<kw name="Get Variable Value" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.694481" 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-14T01:04:31.694140" elapsed="0.000370"/>
</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-14T01:04:31.695118" elapsed="0.000306"/>
</kw>
<msg time="2026-08-14T01:04:31.695536" level="INFO">${status} = PASS</msg>
<msg time="2026-08-14T01:04:31.695604" 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-14T01:04:31.694703" elapsed="0.000929"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.696236" 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-14T01:04:31.695835" elapsed="0.000428"/>
</kw>
<kw name="ClusterManagement__Compute_Derived_Variables" owner="ClusterManagement">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.697306" 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-14T01:04:31.697029" elapsed="0.000305"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.697781" level="INFO">@{session_list} = [ ]</msg>
<var>@{session_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:31.697488" elapsed="0.000322"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.698324" 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-14T01:04:31.697972" elapsed="0.000381"/>
</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-14T01:04:31.701507" elapsed="0.000028"/>
</kw>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-14T01:04:31.701311" elapsed="0.000291"/>
</iter>
<var>${index}</var>
<value>1</value>
<value>${int_of_members+1}</value>
<status status="NOT RUN" start="2026-08-14T01:04:31.698415" elapsed="0.003218"/>
</for>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.702166" 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-14T01:04:31.701797" elapsed="0.000416"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.702758" 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-14T01:04:31.702377" elapsed="0.000426"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.703319" 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-14T01:04:31.702964" elapsed="0.000399"/>
</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-14T01:04:31.696526" elapsed="0.006900"/>
</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-14T01:04:31.688400" elapsed="0.015085"/>
</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-14T01:04:31.725688" elapsed="0.000259"/>
</kw>
<msg time="2026-08-14T01:04:31.726001" 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-14T01:04:31.724940" elapsed="0.001130"/>
</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-14T01:04:31.724454" elapsed="0.001711"/>
</kw>
<msg time="2026-08-14T01:04:31.726224" 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-14T01:04:31.715857" elapsed="0.010492"/>
</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-14T01:04:31.715261" elapsed="0.011170"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.727385" 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-14T01:04:31.727115" elapsed="0.000322"/>
</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-14T01:04:31.732687" 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-14T01:04:31.732275" elapsed="0.000440"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.733161" 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-14T01:04:31.732871" elapsed="0.000317"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-14T01:04:31.733236" elapsed="0.000033"/>
</return>
<msg time="2026-08-14T01:04:31.733400" 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-14T01:04:31.731902" elapsed="0.001523"/>
</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-14T01:04:31.733593" elapsed="0.000161"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.734280" 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-14T01:04:31.733909" elapsed="0.000403"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.734722" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:31.734464" elapsed="0.000284"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.735128" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:31.734891" elapsed="0.000263"/>
</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-14T01:04:31.735753" elapsed="0.000026"/>
</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-14T01:04:31.736016" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:31.735870" elapsed="0.000202"/>
</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-14T01:04:31.736236" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:31.736097" elapsed="0.000193"/>
</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-14T01:04:31.736453" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:31.736315" elapsed="0.000188"/>
</branch>
<status status="NOT RUN" start="2026-08-14T01:04:31.735848" elapsed="0.000680"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-14T01:04:31.735548" elapsed="0.001004"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:31.735203" elapsed="0.001391"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-14T01:04:31.736635" elapsed="0.000031"/>
</return>
<msg time="2026-08-14T01:04:31.736846" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-14T01:04:31.736894" 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-14T01:04:31.731141" elapsed="0.005783"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.737459" level="INFO">Length is 0.</msg>
<msg time="2026-08-14T01:04:31.737539" 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-14T01:04:31.737094" elapsed="0.000483"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.738178" 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-14T01:04:31.737881" elapsed="0.000381">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-14T01:04:31.737658" elapsed="0.000674">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-14T01:04:31.737637" elapsed="0.000729">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-14T01:04:31.738517" elapsed="0.000022"/>
</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-14T01:04:31.738703" elapsed="0.000021"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:31.738807" elapsed="0.000019"/>
</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-14T01:04:31.728505" elapsed="0.010424">No leader found.</status>
</kw>
<var name="${shard_name}">inventory</var>
<status status="FAIL" start="2026-08-14T01:04:31.728265" elapsed="0.010738">No leader found.</status>
</iter>
<var>${shard_name}</var>
<value>@{shard_name_list}</value>
<status status="FAIL" start="2026-08-14T01:04:31.728123" elapsed="0.010939">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-14T01:04:31.727683" elapsed="0.011476">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-14T01:04:31.739394" elapsed="0.000026"/>
</kw>
<doc>Check Status for all shards in OpenFlow application.</doc>
<status status="FAIL" start="2026-08-14T01:04:31.704319" elapsed="0.035195">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-14T01:04:31.739741" elapsed="0.000024"/>
</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-14T01:04:31.739919" elapsed="0.000020"/>
</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-14T01:04:31.740089" elapsed="0.000020"/>
</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-14T01:04:31.740371" elapsed="0.000025"/>
</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-14T01:04:31.740656" elapsed="0.000024"/>
</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-14T01:04:31.740935" elapsed="0.000024"/>
</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-14T01:04:31.741123" elapsed="0.000021"/>
</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-14T01:04:31.741292" elapsed="0.000020"/>
</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-14T01:04:31.741463" elapsed="0.000020"/>
</kw>
<doc>Check Status for all shards in OpenFlow application and set the logs across cluster nodes.</doc>
<status status="FAIL" start="2026-08-14T01:04:31.703547" elapsed="0.038090">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-14T01:04:31.750055" 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-14T01:04:31.749666" elapsed="0.000417"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.750526" 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-14T01:04:31.750241" elapsed="0.000311"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-14T01:04:31.750614" elapsed="0.000031"/>
</return>
<msg time="2026-08-14T01:04:31.750772" 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-14T01:04:31.749282" elapsed="0.001516"/>
</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-14T01:04:31.750945" elapsed="0.000155"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.751609" 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-14T01:04:31.751255" elapsed="0.000381"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.752062" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:31.751822" elapsed="0.000266"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.752468" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:31.752231" elapsed="0.000262"/>
</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-14T01:04:31.752957" elapsed="0.000025"/>
</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-14T01:04:31.753209" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:31.753067" elapsed="0.000198"/>
</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-14T01:04:31.753429" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:31.753290" elapsed="0.000192"/>
</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-14T01:04:31.753666" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:31.753509" elapsed="0.000210"/>
</branch>
<status status="NOT RUN" start="2026-08-14T01:04:31.753047" elapsed="0.000697"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-14T01:04:31.752792" elapsed="0.000977"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:31.752541" elapsed="0.001255"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-14T01:04:31.753837" elapsed="0.000028"/>
</return>
<msg time="2026-08-14T01:04:31.754044" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-14T01:04:31.754090" 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-14T01:04:31.748572" elapsed="0.005542"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.754544" level="INFO">Length is 0.</msg>
<msg time="2026-08-14T01:04:31.754644" 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-14T01:04:31.754278" elapsed="0.000391"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-14T01:04:31.755235" 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-14T01:04:31.754955" elapsed="0.000347">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-14T01:04:31.754741" elapsed="0.000624">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-14T01:04:31.754723" elapsed="0.000674">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-14T01:04:31.755545" elapsed="0.000039"/>
</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-14T01:04:31.755749" elapsed="0.000021"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:31.755815" elapsed="0.000016"/>
</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-14T01:04:31.746118" elapsed="0.009799">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-14T01:04:32.766856" 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-14T01:04:32.765886" elapsed="0.001037"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:32.768040" 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-14T01:04:32.767349" elapsed="0.000750"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-14T01:04:32.768226" elapsed="0.000061"/>
</return>
<msg time="2026-08-14T01:04:32.768429" 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-14T01:04:32.765017" elapsed="0.003437"/>
</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-14T01:04:32.768616" elapsed="0.000169"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-14T01:04:32.769277" 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-14T01:04:32.768939" elapsed="0.000364"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:32.769724" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:32.769464" elapsed="0.000286"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:32.770130" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:32.769893" elapsed="0.000262"/>
</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-14T01:04:32.770589" elapsed="0.000025"/>
</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-14T01:04:32.770908" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:32.770765" elapsed="0.000199"/>
</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-14T01:04:32.771125" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:32.770988" elapsed="0.000191"/>
</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-14T01:04:32.771352" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:32.771215" elapsed="0.000190"/>
</branch>
<status status="NOT RUN" start="2026-08-14T01:04:32.770744" elapsed="0.000683"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-14T01:04:32.770407" elapsed="0.001046"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:32.770209" elapsed="0.001271"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-14T01:04:32.771519" elapsed="0.000029"/>
</return>
<msg time="2026-08-14T01:04:32.771739" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-14T01:04:32.771785" 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-14T01:04:32.763360" elapsed="0.008448"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-14T01:04:32.772259" level="INFO">Length is 0.</msg>
<msg time="2026-08-14T01:04:32.772336" 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-14T01:04:32.771973" elapsed="0.000386"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-14T01:04:32.772942" 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-14T01:04:32.772655" elapsed="0.000363">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-14T01:04:32.772430" elapsed="0.000651">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-14T01:04:32.772412" elapsed="0.000700">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-14T01:04:32.773260" elapsed="0.000022"/>
</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-14T01:04:32.773427" elapsed="0.000021"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:32.773494" elapsed="0.000015"/>
</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-14T01:04:32.757021" elapsed="0.016588">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-14T01:04:33.784032" 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-14T01:04:33.783546" elapsed="0.000517"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:33.784531" 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-14T01:04:33.784231" elapsed="0.000341"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-14T01:04:33.784626" elapsed="0.000040"/>
</return>
<msg time="2026-08-14T01:04:33.784798" 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-14T01:04:33.783051" elapsed="0.001774"/>
</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-14T01:04:33.784977" elapsed="0.000172"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-14T01:04:33.785669" 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-14T01:04:33.785307" elapsed="0.000389"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:33.786118" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:33.785871" elapsed="0.000274"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:33.786538" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:33.786297" elapsed="0.000283"/>
</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-14T01:04:33.787020" elapsed="0.000025"/>
</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-14T01:04:33.787349" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:33.787202" elapsed="0.000204"/>
</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-14T01:04:33.787584" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:33.787430" elapsed="0.000211"/>
</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-14T01:04:33.787806" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:33.787665" elapsed="0.000193"/>
</branch>
<status status="NOT RUN" start="2026-08-14T01:04:33.787179" elapsed="0.000702"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-14T01:04:33.786852" elapsed="0.001056"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:33.786638" elapsed="0.001297"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-14T01:04:33.787977" elapsed="0.000028"/>
</return>
<msg time="2026-08-14T01:04:33.788183" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-14T01:04:33.788229" 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-14T01:04:33.781158" elapsed="0.007096"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-14T01:04:33.788721" level="INFO">Length is 0.</msg>
<msg time="2026-08-14T01:04:33.788799" 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-14T01:04:33.788419" elapsed="0.000404"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-14T01:04:33.789420" 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-14T01:04:33.789117" elapsed="0.000383">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-14T01:04:33.788895" elapsed="0.000687">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-14T01:04:33.788877" elapsed="0.000738">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-14T01:04:33.789780" elapsed="0.000026"/>
</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-14T01:04:33.789958" elapsed="0.000021"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:33.790026" elapsed="0.000016"/>
</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-14T01:04:33.774678" elapsed="0.015453">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-14T01:04:34.799476" 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-14T01:04:34.798853" elapsed="0.000665"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:34.800362" 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-14T01:04:34.799952" elapsed="0.000446"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-14T01:04:34.800465" elapsed="0.000052"/>
</return>
<msg time="2026-08-14T01:04:34.800720" 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-14T01:04:34.798292" elapsed="0.002463"/>
</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-14T01:04:34.800964" elapsed="0.000231"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-14T01:04:34.801906" 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-14T01:04:34.801414" elapsed="0.000529"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:34.802537" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:34.802159" elapsed="0.000435"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:34.803133" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:34.802800" elapsed="0.000371"/>
</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-14T01:04:34.803767" elapsed="0.000036"/>
</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-14T01:04:34.804120" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:34.803921" elapsed="0.000347"/>
</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-14T01:04:34.804502" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:34.804306" elapsed="0.000294"/>
</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-14T01:04:34.804826" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:34.804634" elapsed="0.000264"/>
</branch>
<status status="NOT RUN" start="2026-08-14T01:04:34.803895" elapsed="0.001035"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-14T01:04:34.803517" elapsed="0.001445"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:34.803249" elapsed="0.001750"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-14T01:04:34.805053" elapsed="0.000039"/>
</return>
<msg time="2026-08-14T01:04:34.805337" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-14T01:04:34.805402" 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-14T01:04:34.797150" elapsed="0.008286"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-14T01:04:34.806072" level="INFO">Length is 0.</msg>
<msg time="2026-08-14T01:04:34.806224" 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-14T01:04:34.805688" elapsed="0.000573"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-14T01:04:34.807067" 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-14T01:04:34.806676" elapsed="0.000493">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-14T01:04:34.806359" elapsed="0.000883">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-14T01:04:34.806335" elapsed="0.000939">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-14T01:04:34.807421" elapsed="0.000022"/>
</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-14T01:04:34.807604" elapsed="0.000021"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:34.807673" elapsed="0.000016"/>
</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-14T01:04:34.791180" elapsed="0.016595">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-14T01:04:35.820032" 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-14T01:04:35.819527" elapsed="0.000537"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:35.820669" 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-14T01:04:35.820284" elapsed="0.000422"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-14T01:04:35.820772" elapsed="0.000057"/>
</return>
<msg time="2026-08-14T01:04:35.821007" 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-14T01:04:35.819142" elapsed="0.001901"/>
</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-14T01:04:35.821244" elapsed="0.000186"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-14T01:04:35.822182" 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-14T01:04:35.821638" elapsed="0.000572"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:35.822849" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:35.822391" elapsed="0.000497"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:35.823399" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:35.823083" elapsed="0.000343"/>
</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-14T01:04:35.823990" elapsed="0.000027"/>
</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-14T01:04:35.824293" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:35.824110" elapsed="0.000241"/>
</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-14T01:04:35.824513" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:35.824377" elapsed="0.000283"/>
</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-14T01:04:35.824887" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:35.824687" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-08-14T01:04:35.824089" elapsed="0.000879"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-14T01:04:35.823807" elapsed="0.001185"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:35.823503" elapsed="0.001517"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-14T01:04:35.825062" elapsed="0.000030"/>
</return>
<msg time="2026-08-14T01:04:35.825274" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-14T01:04:35.825321" 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-14T01:04:35.818388" elapsed="0.006957"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-14T01:04:35.825906" level="INFO">Length is 0.</msg>
<msg time="2026-08-14T01:04:35.825989" 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-14T01:04:35.825512" elapsed="0.000500"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-14T01:04:35.826710" 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-14T01:04:35.826342" elapsed="0.000450">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-14T01:04:35.826085" elapsed="0.000774">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-14T01:04:35.826066" elapsed="0.000826">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-14T01:04:35.827041" elapsed="0.000059"/>
</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-14T01:04:35.827250" elapsed="0.000021"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:35.827317" elapsed="0.000015"/>
</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-14T01:04:35.809976" elapsed="0.017449">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-14T01:04:36.838528" 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-14T01:04:36.837901" elapsed="0.000675"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:36.839040" 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-14T01:04:36.838747" elapsed="0.000318"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-14T01:04:36.839114" elapsed="0.000046"/>
</return>
<msg time="2026-08-14T01:04:36.839291" 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-14T01:04:36.836957" elapsed="0.002359"/>
</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-14T01:04:36.839463" elapsed="0.000191"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-14T01:04:36.840139" 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-14T01:04:36.839808" elapsed="0.000357"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:36.840636" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:36.840325" elapsed="0.000338"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:36.841045" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:36.840808" elapsed="0.000262"/>
</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-14T01:04:36.841514" elapsed="0.000025"/>
</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-14T01:04:36.841791" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:36.841646" elapsed="0.000200"/>
</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-14T01:04:36.842007" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:36.841872" elapsed="0.000188"/>
</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-14T01:04:36.842312" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:36.842082" elapsed="0.000283"/>
</branch>
<status status="NOT RUN" start="2026-08-14T01:04:36.841624" elapsed="0.000764"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-14T01:04:36.841348" elapsed="0.001065"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:36.841124" elapsed="0.001315"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-14T01:04:36.842479" elapsed="0.000027"/>
</return>
<msg time="2026-08-14T01:04:36.842700" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-14T01:04:36.842746" 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-14T01:04:36.835046" elapsed="0.007723"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-14T01:04:36.843219" level="INFO">Length is 0.</msg>
<msg time="2026-08-14T01:04:36.843300" 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-14T01:04:36.842933" elapsed="0.000391"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-14T01:04:36.843995" 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-14T01:04:36.843658" elapsed="0.000417">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-14T01:04:36.843396" elapsed="0.000744">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-14T01:04:36.843376" elapsed="0.000800">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-14T01:04:36.844329" elapsed="0.000022"/>
</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-14T01:04:36.844514" elapsed="0.000023"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:36.844600" elapsed="0.000017"/>
</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-14T01:04:36.828432" elapsed="0.016278">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-14T01:04:37.856752" 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-14T01:04:37.855610" elapsed="0.001218"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:37.857597" 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-14T01:04:37.857246" elapsed="0.000379"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-14T01:04:37.857676" elapsed="0.000044"/>
</return>
<msg time="2026-08-14T01:04:37.857855" 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-14T01:04:37.854618" elapsed="0.003262"/>
</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-14T01:04:37.858033" elapsed="0.000176"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-14T01:04:37.858730" 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-14T01:04:37.858367" elapsed="0.000396"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:37.859205" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:37.858951" elapsed="0.000282"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:37.859643" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:37.859379" elapsed="0.000292"/>
</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-14T01:04:37.860139" elapsed="0.000038"/>
</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-14T01:04:37.860424" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:37.860276" elapsed="0.000205"/>
</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-14T01:04:37.860680" elapsed="0.000023"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:37.860506" elapsed="0.000232"/>
</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-14T01:04:37.860902" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:37.860763" elapsed="0.000253"/>
</branch>
<status status="NOT RUN" start="2026-08-14T01:04:37.860255" elapsed="0.000787"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-14T01:04:37.859935" elapsed="0.001132"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:37.859724" elapsed="0.001368"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-14T01:04:37.861132" elapsed="0.000030"/>
</return>
<msg time="2026-08-14T01:04:37.861338" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-14T01:04:37.861384" 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-14T01:04:37.852617" elapsed="0.008790"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-14T01:04:37.861877" level="INFO">Length is 0.</msg>
<msg time="2026-08-14T01:04:37.861956" 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-14T01:04:37.861588" elapsed="0.000392"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-14T01:04:37.862575" 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-14T01:04:37.862266" elapsed="0.000404">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-14T01:04:37.862051" elapsed="0.000687">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-14T01:04:37.862033" elapsed="0.000739">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-14T01:04:37.862959" elapsed="0.000036"/>
</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-14T01:04:37.863146" elapsed="0.000022"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:37.863214" elapsed="0.000015"/>
</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-14T01:04:37.845777" elapsed="0.017543">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-14T01:04:38.872626" 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-14T01:04:38.871925" elapsed="0.000746"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:38.873311" 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-14T01:04:38.872902" elapsed="0.000446"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-14T01:04:38.873415" elapsed="0.000053"/>
</return>
<msg time="2026-08-14T01:04:38.873669" 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-14T01:04:38.871377" elapsed="0.002328"/>
</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-14T01:04:38.873915" elapsed="0.000228"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-14T01:04:38.874884" 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-14T01:04:38.874360" elapsed="0.000562"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:38.875475" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:38.875138" elapsed="0.000374"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:38.876073" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:38.875736" elapsed="0.000374"/>
</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-14T01:04:38.876761" elapsed="0.000036"/>
</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-14T01:04:38.877116" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:38.876916" elapsed="0.000278"/>
</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-14T01:04:38.877417" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:38.877228" elapsed="0.000262"/>
</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-14T01:04:38.877734" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:38.877522" elapsed="0.000284"/>
</branch>
<status status="NOT RUN" start="2026-08-14T01:04:38.876891" elapsed="0.000945"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-14T01:04:38.876493" elapsed="0.001375"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:38.876199" elapsed="0.001777"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-14T01:04:38.878034" elapsed="0.000039"/>
</return>
<msg time="2026-08-14T01:04:38.878309" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-14T01:04:38.878373" 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-14T01:04:38.870359" elapsed="0.008046"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-14T01:04:38.879087" level="INFO">Length is 0.</msg>
<msg time="2026-08-14T01:04:38.879196" 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-14T01:04:38.878656" elapsed="0.000576"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-14T01:04:38.880041" 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-14T01:04:38.879652" elapsed="0.000499">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-14T01:04:38.879333" elapsed="0.000910">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-14T01:04:38.879308" elapsed="0.000980">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-14T01:04:38.880493" elapsed="0.000031"/>
</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-14T01:04:38.880751" elapsed="0.000029"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:38.880843" elapsed="0.000022"/>
</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-14T01:04:38.864453" elapsed="0.016531">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-14T01:04:39.892386" 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-14T01:04:39.891227" elapsed="0.001192"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:39.892901" 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-14T01:04:39.892604" elapsed="0.000324"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-14T01:04:39.892976" elapsed="0.000042"/>
</return>
<msg time="2026-08-14T01:04:39.893145" 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-14T01:04:39.890309" elapsed="0.002860"/>
</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-14T01:04:39.893316" elapsed="0.000168"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-14T01:04:39.893983" 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-14T01:04:39.893651" elapsed="0.000358"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:39.894394" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:39.894159" elapsed="0.000260"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:39.894807" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:39.894573" elapsed="0.000259"/>
</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-14T01:04:39.895239" elapsed="0.000027"/>
</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-14T01:04:39.895492" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:39.895351" elapsed="0.000195"/>
</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-14T01:04:39.895737" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:39.895586" elapsed="0.000205"/>
</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-14T01:04:39.895991" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:39.895852" elapsed="0.000190"/>
</branch>
<status status="NOT RUN" start="2026-08-14T01:04:39.895332" elapsed="0.000732"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-14T01:04:39.895073" elapsed="0.001014"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:39.894884" elapsed="0.001229"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-14T01:04:39.896151" elapsed="0.000027"/>
</return>
<msg time="2026-08-14T01:04:39.896447" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-14T01:04:39.896494" 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-14T01:04:39.888681" elapsed="0.007837"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-14T01:04:39.897012" level="INFO">Length is 0.</msg>
<msg time="2026-08-14T01:04:39.897129" 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-14T01:04:39.896699" elapsed="0.000455"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-14T01:04:39.897808" 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-14T01:04:39.897469" elapsed="0.000411">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-14T01:04:39.897224" elapsed="0.000720">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-14T01:04:39.897207" elapsed="0.000769">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-14T01:04:39.898123" elapsed="0.000022"/>
</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-14T01:04:39.898290" elapsed="0.000021"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:39.898356" elapsed="0.000016"/>
</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-14T01:04:39.882087" elapsed="0.016370">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-14T01:04:40.911444" 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-14T01:04:40.910355" elapsed="0.001154"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:40.912395" 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-14T01:04:40.911936" elapsed="0.000486"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-14T01:04:40.912471" elapsed="0.000045"/>
</return>
<msg time="2026-08-14T01:04:40.912665" 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-14T01:04:40.909427" elapsed="0.003264"/>
</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-14T01:04:40.912850" elapsed="0.000173"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-14T01:04:40.913516" 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-14T01:04:40.913178" elapsed="0.000366"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:40.913971" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:40.913715" elapsed="0.000282"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:40.914376" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:40.914140" elapsed="0.000261"/>
</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-14T01:04:40.914842" elapsed="0.000027"/>
</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-14T01:04:40.915103" elapsed="0.000040"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:40.914959" elapsed="0.000219"/>
</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-14T01:04:40.915345" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:40.915203" elapsed="0.000196"/>
</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-14T01:04:40.915571" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:40.915421" elapsed="0.000203"/>
</branch>
<status status="NOT RUN" start="2026-08-14T01:04:40.914939" elapsed="0.000708"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-14T01:04:40.914665" elapsed="0.001005"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:40.914454" elapsed="0.001242"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-14T01:04:40.915736" elapsed="0.000028"/>
</return>
<msg time="2026-08-14T01:04:40.915948" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-14T01:04:40.915996" 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-14T01:04:40.907700" elapsed="0.008319"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-14T01:04:40.916535" level="INFO">Length is 0.</msg>
<msg time="2026-08-14T01:04:40.916631" 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-14T01:04:40.916256" elapsed="0.000399"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-14T01:04:40.917239" 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-14T01:04:40.916951" elapsed="0.000362">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-14T01:04:40.916725" elapsed="0.000654">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-14T01:04:40.916707" elapsed="0.000703">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-14T01:04:40.917571" elapsed="0.000025"/>
</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-14T01:04:40.917744" elapsed="0.000021"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:40.917812" elapsed="0.000015"/>
</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-14T01:04:40.899510" elapsed="0.018413">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-14T01:04:41.928747" 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-14T01:04:41.928180" elapsed="0.000603"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:41.929309" 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-14T01:04:41.928964" elapsed="0.000375"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-08-14T01:04:41.929400" elapsed="0.000044"/>
</return>
<msg time="2026-08-14T01:04:41.929604" 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-14T01:04:41.927753" elapsed="0.001877"/>
</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-14T01:04:41.929786" elapsed="0.000172"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-08-14T01:04:41.930491" 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-14T01:04:41.930136" elapsed="0.000394"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:41.930974" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:41.930730" elapsed="0.000272"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-08-14T01:04:41.931420" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-08-14T01:04:41.931157" elapsed="0.000291"/>
</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-14T01:04:41.931915" elapsed="0.000026"/>
</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-14T01:04:41.932195" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:41.932043" elapsed="0.000219"/>
</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-14T01:04:41.932435" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:41.932287" elapsed="0.000211"/>
</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-14T01:04:41.932678" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-08-14T01:04:41.932521" elapsed="0.000210"/>
</branch>
<status status="NOT RUN" start="2026-08-14T01:04:41.932022" elapsed="0.000732"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-08-14T01:04:41.931745" elapsed="0.001033"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:41.931500" elapsed="0.001304"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-08-14T01:04:41.932843" elapsed="0.000042"/>
</return>
<msg time="2026-08-14T01:04:41.933089" level="INFO">${leader_list} = []</msg>
<msg time="2026-08-14T01:04:41.933136" 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-14T01:04:41.926317" elapsed="0.006854"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-08-14T01:04:41.933741" level="INFO">Length is 0.</msg>
<msg time="2026-08-14T01:04:41.933819" 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-14T01:04:41.933427" elapsed="0.000417"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-08-14T01:04:41.934512" 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-14T01:04:41.934157" elapsed="0.000466">No leader found.</status>
</kw>
<status status="FAIL" start="2026-08-14T01:04:41.933928" elapsed="0.000840">No leader found.</status>
</branch>
<status status="FAIL" start="2026-08-14T01:04:41.933900" elapsed="0.000904">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-14T01:04:41.935029" elapsed="0.000030"/>
</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-14T01:04:41.935232" elapsed="0.000024"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:41.935304" elapsed="0.000016"/>
</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-14T01:04:41.919125" elapsed="0.016287">No leader found.</status>
</kw>
<msg time="2026-08-14T01:04:41.935601" 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-14T01:04:31.745493" elapsed="10.190256">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-14T01:04:41.935978" elapsed="0.000023"/>
</kw>
<return>
<value>${inv_conf_leader}</value>
<value>${inv_conf_followers_list}</value>
<status status="NOT RUN" start="2026-08-14T01:04:41.936042" elapsed="0.000025"/>
</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-14T01:04:31.743029" elapsed="10.193125">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-14T01:04:41.936337" elapsed="0.000022"/>
</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-14T01:04:41.936533" elapsed="0.000037"/>
</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-14T01:04:41.936736" elapsed="0.000021"/>
</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-14T01:04:41.936914" elapsed="0.000028"/>
</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-14T01:04:41.937123" elapsed="0.000025"/>
</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-14T01:04:41.937335" elapsed="0.000025"/>
</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-14T01:04:41.937513" elapsed="0.000026"/>
</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-14T01:04:41.937787" elapsed="0.000033"/>
</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-14T01:04:41.938073" elapsed="0.000033"/>
</kw>
<doc>Find a leader and followers in the inventory config shard</doc>
<status status="FAIL" start="2026-08-14T01:04:31.742120" elapsed="10.196160">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-14T01:04:41.944963" 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-14T01:04:41.939530" elapsed="0.005480">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-14T01:04:41.945210" elapsed="0.000024"/>
</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-14T01:04:41.945396" elapsed="0.000021"/>
</kw>
<doc>Start mininet with connection to follower node1.</doc>
<status status="FAIL" start="2026-08-14T01:04:41.938849" elapsed="0.006735">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-14T01:04:41.947550" level="INFO">${config_datastore_write_start_time} = 2026-08-14 01:04:41.947</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-14T01:04:41.947120" elapsed="0.000491"/>
</kw>
<kw name="Add Bulk Flow In Node" owner="BulkomaticKeywords">
<msg time="2026-08-14T01:04:41.958023" 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-14T01:04:41.953234" elapsed="0.004839">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-14T01:04:41.958245" elapsed="0.000036"/>
</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-14T01:04:41.958463" elapsed="0.000034"/>
</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-14T01:04:41.958684" elapsed="0.000023"/>
</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-14T01:04:41.958858" elapsed="0.000021"/>
</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-14T01:04:41.959038" elapsed="0.000020"/>
</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-14T01:04:41.959204" elapsed="0.000021"/>
</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-14T01:04:41.959382" elapsed="0.000027"/>
</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-14T01:04:41.959576" elapsed="0.000021"/>
</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-14T01:04:41.959756" elapsed="0.000020"/>
</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-14T01:04:41.946038" elapsed="0.013874">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-14T01:04:41.961239" level="INFO">${Mininet_write_start_time} = 2026-08-14 01:04:41.961</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-14T01:04:41.960983" elapsed="0.000467"/>
</kw>
<kw name="Verify Aggregate Flow From Mininet Session" owner="MininetKeywords">
<msg time="2026-08-14T01:04:41.966135" 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-14T01:04:41.961781" elapsed="0.004395">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-14T01:04:41.966367" elapsed="0.000023"/>
</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-14T01:04:41.966542" elapsed="0.000034"/>
</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-14T01:04:41.966761" elapsed="0.000021"/>
</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-14T01:04:41.966941" elapsed="0.000020"/>
</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-14T01:04:41.967109" elapsed="0.000020"/>
</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-14T01:04:41.967264" elapsed="0.000019"/>
</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-14T01:04:41.967451" elapsed="0.000027"/>
</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-14T01:04:41.967671" elapsed="0.000022"/>
</kw>
<doc>Verify 100K flows are installed in 10 switches.</doc>
<status status="FAIL" start="2026-08-14T01:04:41.960299" elapsed="0.007518">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-14T01:04:41.978658" 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-14T01:04:41.973935" elapsed="0.004769">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:04:43.994198" 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-14T01:04:43.989153" elapsed="0.005100">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:04:46.009248" 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-14T01:04:46.004636" elapsed="0.004662">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:04:48.025158" 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-14T01:04:48.020383" elapsed="0.004871">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:04:50.041152" 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-14T01:04:50.034538" elapsed="0.006687">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:04:52.055207" 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-14T01:04:52.049229" elapsed="0.006045">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:04:54.073482" 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-14T01:04:54.066996" elapsed="0.006591">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:04:56.088969" 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-14T01:04:56.082497" elapsed="0.006550">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:04:58.103416" 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-14T01:04:58.097488" elapsed="0.005995">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:00.120640" 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-14T01:05:00.113610" elapsed="0.007085">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:02.138458" 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-14T01:05:02.133627" elapsed="0.004887">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:04.153391" 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-14T01:05:04.147318" elapsed="0.006148">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:06.169326" 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-14T01:05:06.163290" elapsed="0.006103">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:08.185009" 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-14T01:05:08.179024" elapsed="0.006057">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:10.201128" 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-14T01:05:10.195500" elapsed="0.005681">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:12.216225" 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-14T01:05:12.211098" elapsed="0.005179">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:14.231203" 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-14T01:05:14.225998" elapsed="0.005255">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:16.246239" 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-14T01:05:16.241047" elapsed="0.005245">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:18.263701" 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-14T01:05:18.256237" elapsed="0.007520">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:20.277473" 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-14T01:05:20.271544" elapsed="0.005995">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:22.292310" 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-14T01:05:22.285772" elapsed="0.006706">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:24.307151" 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-14T01:05:24.302669" elapsed="0.004535">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:26.324032" 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-14T01:05:26.318063" elapsed="0.006030">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:28.339526" 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-14T01:05:28.333869" elapsed="0.005760">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:30.352932" 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-14T01:05:30.348337" elapsed="0.004650">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:32.368102" 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-14T01:05:32.362042" elapsed="0.006140">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:34.381759" 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-14T01:05:34.377459" elapsed="0.004359">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:36.396848" 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-14T01:05:36.392285" elapsed="0.004616">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:38.410908" 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-14T01:05:38.406571" elapsed="0.004393">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:40.424080" 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-14T01:05:40.418359" elapsed="0.005774">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:42.438918" 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-14T01:05:42.432962" elapsed="0.006024">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:44.454383" 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-14T01:05:44.447789" elapsed="0.006654">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:46.469228" 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-14T01:05:46.464601" elapsed="0.004683">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:48.484046" 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-14T01:05:48.479206" elapsed="0.004897">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:50.498986" 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-14T01:05:50.494626" elapsed="0.004414">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:52.508482" 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-14T01:05:52.503878" elapsed="0.004657">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:54.523142" 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-14T01:05:54.518217" elapsed="0.004974">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:56.537828" 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-14T01:05:56.531950" elapsed="0.006071">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:05:58.552766" 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-14T01:05:58.546765" elapsed="0.006054">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:00.567760" 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-14T01:06:00.561404" elapsed="0.006431">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:02.585190" 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-14T01:06:02.578653" elapsed="0.006590">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:04.601754" 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-14T01:06:04.595636" elapsed="0.006191">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:06.616522" 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-14T01:06:06.611884" elapsed="0.004732">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:08.631369" 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-14T01:06:08.627020" elapsed="0.004404">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:10.646303" 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-14T01:06:10.640106" elapsed="0.006266">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:12.662465" 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-14T01:06:12.656244" elapsed="0.006273">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:14.680698" 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-14T01:06:14.672687" elapsed="0.008063">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:16.694894" 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-14T01:06:16.689143" elapsed="0.005806">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:18.709836" 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-14T01:06:18.703417" elapsed="0.006494">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:20.726710" 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-14T01:06:20.720696" elapsed="0.006067">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:22.742935" 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-14T01:06:22.737673" elapsed="0.005321">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:24.757613" 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-14T01:06:24.751684" elapsed="0.005999">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:26.773492" 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-14T01:06:26.767609" elapsed="0.005937">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:28.788306" 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-14T01:06:28.783752" elapsed="0.004608">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:30.803050" 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-14T01:06:30.798043" elapsed="0.005062">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:32.820466" 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-14T01:06:32.813666" elapsed="0.006855">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:34.837473" 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-14T01:06:34.831072" elapsed="0.006515">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:36.852533" 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-14T01:06:36.848110" elapsed="0.004501">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:38.869554" 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-14T01:06:38.863269" elapsed="0.006391">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:40.886574" 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-14T01:06:40.880736" elapsed="0.005889">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:42.901074" 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-14T01:06:42.896241" elapsed="0.004886">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:44.918209" 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-14T01:06:44.910769" elapsed="0.007492">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:46.931902" 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-14T01:06:46.927696" elapsed="0.004257">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:48.943783" 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-14T01:06:48.938226" elapsed="0.005611">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:50.958693" 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-14T01:06:50.954138" elapsed="0.004610">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:52.973258" 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-14T01:06:52.967057" elapsed="0.006270">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:54.990097" 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-14T01:06:54.983898" elapsed="0.006281">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:57.006444" 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-14T01:06:57.000979" elapsed="0.005528">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:06:59.021740" 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-14T01:06:59.016783" elapsed="0.005013">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:01.036936" 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-14T01:07:01.032329" elapsed="0.004668">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:03.054874" 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-14T01:07:03.048184" elapsed="0.006776">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:05.076087" 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-14T01:07:05.066206" elapsed="0.009942">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:07.091027" 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-14T01:07:07.086393" elapsed="0.004689">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:09.107317" 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-14T01:07:09.101232" elapsed="0.006155">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:11.122877" 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-14T01:07:11.117080" elapsed="0.005848">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:13.138013" 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-14T01:07:13.131684" 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-14T01:07:15.152609" 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-14T01:07:15.146570" elapsed="0.006114">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:17.168487" 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-14T01:07:17.162454" elapsed="0.006093">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:19.183753" 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-14T01:07:19.178256" elapsed="0.005553">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:21.198092" 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-14T01:07:21.193807" elapsed="0.004334">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:23.213155" 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-14T01:07:23.206803" elapsed="0.006418">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:25.227043" 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-14T01:07:25.222489" elapsed="0.004609">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:27.241681" 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-14T01:07:27.235735" elapsed="0.005999">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:29.256403" 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-14T01:07:29.250541" elapsed="0.005916">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:31.270697" 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-14T01:07:31.264842" elapsed="0.005938">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:33.285961" 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-14T01:07:33.279759" elapsed="0.006253">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:35.299536" 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-14T01:07:35.294117" elapsed="0.005486">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:37.312934" 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-14T01:07:37.308605" elapsed="0.004382">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:39.326531" 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-14T01:07:39.320667" elapsed="0.005944">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:41.342378" 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-14T01:07:41.337162" elapsed="0.005272">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:43.357835" 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-14T01:07:43.351384" elapsed="0.006542">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:45.375809" 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-14T01:07:45.367665" elapsed="0.008194">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:47.393096" 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-14T01:07:47.387124" elapsed="0.006027">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:49.410592" 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-14T01:07:49.403160" elapsed="0.007489">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:51.427037" 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-14T01:07:51.421238" elapsed="0.005854">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:53.442912" 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-14T01:07:53.438432" elapsed="0.004540">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:55.459276" 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-14T01:07:55.453151" elapsed="0.006207">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:57.474310" 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-14T01:07:57.467755" elapsed="0.006624">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:07:59.489680" 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-14T01:07:59.482781" elapsed="0.006966">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:01.504962" 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-14T01:08:01.499341" elapsed="0.005674">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:03.520216" 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-14T01:08:03.513227" elapsed="0.007063">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:05.535571" 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-14T01:08:05.530347" elapsed="0.005281">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:07.547439" 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-14T01:08:07.541011" elapsed="0.006498">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:09.562141" 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-14T01:08:09.557328" elapsed="0.004869">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:11.580066" 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-14T01:08:11.573692" elapsed="0.006441">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:13.594347" 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-14T01:08:13.588328" elapsed="0.006090">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:15.609793" 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-14T01:08:15.603268" elapsed="0.006595">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:17.623688" 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-14T01:08:17.617961" elapsed="0.005783">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:19.638570" 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-14T01:08:19.632423" elapsed="0.006221">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:21.653061" 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-14T01:08:21.647107" elapsed="0.006034">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:23.667935" 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-14T01:08:23.661809" elapsed="0.006199">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:25.685691" 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-14T01:08:25.679478" elapsed="0.006274">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:27.701754" 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-14T01:08:27.696878" elapsed="0.004938">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:29.718220" 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-14T01:08:29.711846" elapsed="0.006454">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:31.732840" 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-14T01:08:31.726665" elapsed="0.006258">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:33.746858" 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-14T01:08:33.742590" elapsed="0.004322">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:35.761808" 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-14T01:08:35.757257" elapsed="0.004608">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:37.777643" 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-14T01:08:37.771467" elapsed="0.006250">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:39.792271" 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-14T01:08:39.786354" elapsed="0.005984">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:41.809428" 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-14T01:08:41.802681" elapsed="0.006806">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:43.826263" 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-14T01:08:43.821621" elapsed="0.004700">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:45.841733" 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-14T01:08:45.835385" elapsed="0.006420">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:47.857592" 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-14T01:08:47.852794" elapsed="0.004853">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:49.873541" 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-14T01:08:49.867628" elapsed="0.005995">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:51.888254" 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-14T01:08:51.881734" elapsed="0.006591">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:53.907621" 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-14T01:08:53.900165" elapsed="0.007519">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:55.924273" 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-14T01:08:55.918852" elapsed="0.005479">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:57.941473" 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-14T01:08:57.934181" elapsed="0.007347">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:08:59.957796" 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-14T01:08:59.951623" elapsed="0.006228">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:01.973580" 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-14T01:09:01.969114" elapsed="0.004521">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:03.989141" 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-14T01:09:03.984443" elapsed="0.004754">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:06.000490" 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-14T01:09:05.994715" elapsed="0.005834">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:08.014916" 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-14T01:09:08.010485" elapsed="0.004488">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:10.031536" 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-14T01:09:10.024742" elapsed="0.006884">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:12.045764" 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-14T01:09:12.039542" elapsed="0.006298">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:14.061197" 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-14T01:09:14.054635" elapsed="0.006636">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:16.075131" 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-14T01:09:16.070885" elapsed="0.004298">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:18.090319" 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-14T01:09:18.085357" elapsed="0.005012">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:20.107288" 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-14T01:09:20.100690" elapsed="0.006653">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:22.120947" 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-14T01:09:22.115102" elapsed="0.005911">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:24.135732" 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-14T01:09:24.130791" elapsed="0.004992">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:26.151292" 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-14T01:09:26.145325" elapsed="0.006032">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:28.166902" 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-14T01:09:28.162260" elapsed="0.004706">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:30.181726" 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-14T01:09:30.175210" elapsed="0.006583">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:32.200934" 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-14T01:09:32.194336" elapsed="0.006656">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:34.216249" 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-14T01:09:34.210107" elapsed="0.006212">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:36.232595" 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-14T01:09:36.227761" elapsed="0.004897">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:38.247737" 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-14T01:09:38.243322" elapsed="0.004470">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:40.264047" 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-14T01:09:40.257841" elapsed="0.006282">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:42.279263" 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-14T01:09:42.273946" elapsed="0.005366">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:44.296396" 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-14T01:09:44.289224" elapsed="0.007231">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:46.313832" 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-14T01:09:46.306449" elapsed="0.007444">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:48.327584" 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-14T01:09:48.323329" elapsed="0.004306">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:50.347736" 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-14T01:09:50.338158" elapsed="0.009712">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:52.367530" 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-14T01:09:52.359253" elapsed="0.008359">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:54.382599" 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-14T01:09:54.377349" elapsed="0.005303">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:56.398104" 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-14T01:09:56.393735" elapsed="0.004433">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:09:58.413048" 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-14T01:09:58.407014" elapsed="0.006099">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:00.428058" 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-14T01:10:00.421896" elapsed="0.006230">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:02.444697" 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-14T01:10:02.437913" elapsed="0.006836">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:04.458141" 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-14T01:10:04.452219" elapsed="0.005991">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:06.474928" 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-14T01:10:06.468788" elapsed="0.006194">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:08.490552" 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-14T01:10:08.485248" elapsed="0.005379">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:10.508975" 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-14T01:10:10.501700" elapsed="0.007327">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:12.525144" 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-14T01:10:12.518694" elapsed="0.006517">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:14.540248" 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-14T01:10:14.534083" elapsed="0.006248">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:16.554907" 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-14T01:10:16.548774" elapsed="0.006205">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:18.572197" 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-14T01:10:18.565773" elapsed="0.006475">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:20.587287" 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-14T01:10:20.581327" elapsed="0.006032">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:22.603540" 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-14T01:10:22.598586" elapsed="0.005026">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:24.621532" 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-14T01:10:24.615411" elapsed="0.006200">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:26.636687" 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-14T01:10:26.630538" elapsed="0.006219">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:28.653091" 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-14T01:10:28.647159" elapsed="0.006001">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:30.669364" 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-14T01:10:30.663016" elapsed="0.006439">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:32.684816" 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-14T01:10:32.678815" elapsed="0.006071">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:34.700145" 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-14T01:10:34.694003" elapsed="0.006212">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:36.716846" 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-14T01:10:36.709765" elapsed="0.007151">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:38.730903" 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-14T01:10:38.724245" elapsed="0.006728">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:40.745860" 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-14T01:10:40.741073" elapsed="0.004843">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:42.762100" 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-14T01:10:42.757034" elapsed="0.005119">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:44.779963" 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-14T01:10:44.773045" elapsed="0.007035">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:46.794538" 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-14T01:10:46.790164" elapsed="0.004443">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:48.811603" 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-14T01:10:48.805491" elapsed="0.006169">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:50.827292" 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-14T01:10:50.822202" elapsed="0.005142">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:52.842574" 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-14T01:10:52.837510" elapsed="0.005122">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:54.859018" 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-14T01:10:54.852614" elapsed="0.006503">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:56.877144" 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-14T01:10:56.868916" elapsed="0.008282">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:10:58.894137" 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-14T01:10:58.886914" elapsed="0.007278">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:11:00.909653" 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-14T01:11:00.905066" elapsed="0.004645">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:11:02.923667" 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-14T01:11:02.919154" elapsed="0.004564">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:11:04.941913" 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-14T01:11:04.934325" elapsed="0.007641">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:11:06.956451" 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-14T01:11:06.950456" elapsed="0.006064">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:11:08.972587" 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-14T01:11:08.967823" elapsed="0.004822">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:11:10.988197" 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-14T01:11:10.981295" elapsed="0.007029">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:11:13.004582" 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-14T01:11:12.997956" elapsed="0.006699">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:11:15.021947" 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-14T01:11:15.016030" elapsed="0.005976">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:11:17.037373" 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-14T01:11:17.030808" elapsed="0.006673">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:11:19.051832" 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-14T01:11:19.047494" elapsed="0.004392">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:11:21.066233" 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-14T01:11:21.061850" elapsed="0.004437">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-08-14T01:11:23.082356" 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-14T01:11:23.076846" elapsed="0.005570">Variable '${flow_count_after_add}' not found.</status>
</kw>
<msg time="2026-08-14T01:11:23.082541" 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-14T01:04:41.968656" elapsed="401.114199">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-14T01:11:23.083089" elapsed="0.000027"/>
</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-14T01:11:23.083311" elapsed="0.000022"/>
</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-14T01:11:23.083489" elapsed="0.000020"/>
</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-14T01:11:23.083668" elapsed="0.000021"/>
</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-14T01:11:23.083866" elapsed="0.000022"/>
</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-14T01:11:23.084033" elapsed="0.000021"/>
</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-14T01:11:23.084209" elapsed="0.000020"/>
</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-14T01:11:23.084415" elapsed="0.000023"/>
</kw>
<doc>Check Flows in Operational Datastore</doc>
<status status="FAIL" start="2026-08-14T01:04:41.968095" elapsed="401.116518">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-14T01:11:23.094426" 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-14T01:11:23.090126" elapsed="0.004341">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-14T01:11:23.094694" elapsed="0.000040"/>
</kw>
<doc>Stop mininet and exit connection.</doc>
<status status="FAIL" start="2026-08-14T01:11:23.085001" elapsed="0.009878">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-14T01:11:23.096075" level="INFO">${config_datastore_delete_start_time} = 2026-08-14 01:11:23.096</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-14T01:11:23.095750" elapsed="0.000396"/>
</kw>
<kw name="Delete Bulk Flow In Node" owner="BulkomaticKeywords">
<msg time="2026-08-14T01:11:23.105528" 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-14T01:11:23.101016" elapsed="0.004595">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-14T01:11:23.105802" elapsed="0.000024"/>
</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-14T01:11:23.105994" elapsed="0.000021"/>
</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-14T01:11:23.106176" elapsed="0.000058"/>
</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-14T01:11:23.106382" elapsed="0.000021"/>
</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-14T01:11:23.106538" elapsed="0.000020"/>
</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-14T01:11:23.106794" 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-14T01:11:23.106982" elapsed="0.000062"/>
</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-14T01:11:23.107202" elapsed="0.000022"/>
</kw>
<doc>100K Flows deleted via Follower Node2 and verify it gets applied in all instances.</doc>
<status status="FAIL" start="2026-08-14T01:11:23.095079" elapsed="0.012288">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-14T01:11:23.108529" 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-14T01:11:23.108042" elapsed="0.000567"/>
</kw>
<kw name="Append To File" owner="OperatingSystem">
<msg time="2026-08-14T01:11:23.113671" 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-14T01:11:23.108806" elapsed="0.004913">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-14T01:11:23.113951" elapsed="0.000025"/>
</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-14T01:11:23.114122" elapsed="0.000055"/>
</kw>
<doc>Log results for plotting.</doc>
<status status="FAIL" start="2026-08-14T01:11:23.107623" elapsed="0.006683">Variable '${config_datastore_write_rate}' not found.</status>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-08-14T01:11:23.115205" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-08-14T01:11:23.115115" elapsed="0.000147"/>
</kw>
<doc>Test suite for 3Node Cluster - 100K flows and 10 DPNs in Cluster Scale Up scenario</doc>
<status status="FAIL" start="2026-08-14T01:04:30.983036" elapsed="412.132300"/>
</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>
