<?xml version="1.0" encoding="UTF-8"?>
<robot generator="Robot 7.5 (Python 3.11.10 on linux)" generated="2026-10-07T00:45:51.467654" rpa="false" schemaversion="5">
<suite id="s1" name="openflowplugin-clustering-perf-bulkomatic.txt" source="/w/workspace/openflowplugin-csit-3node-clustering-perf-bulkomatic-only-vanadium/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-10-07T00:45:52.092875" 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-10-07T00:45:52.091405" elapsed="0.001509"/>
</kw>
<if>
<branch type="IF" condition="${already_done}">
<return>
<status status="NOT RUN" start="2026-10-07T00:45:52.093141" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-10-07T00:45:52.093020" elapsed="0.000170"/>
</branch>
<status status="PASS" start="2026-10-07T00:45:52.092994" elapsed="0.000221"/>
</if>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.093760" level="INFO">${ClusterManagement__has_setup_run} = True</msg>
<arg>\${ClusterManagement__has_setup_run}</arg>
<arg>True</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-10-07T00:45:52.093417" elapsed="0.000391"/>
</kw>
<kw name="Get Variable Value" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.094315" 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-10-07T00:45:52.093985" elapsed="0.000358"/>
</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-10-07T00:45:52.094967" elapsed="0.000298"/>
</kw>
<msg time="2026-10-07T00:45:52.095401" level="INFO">${status} = PASS</msg>
<msg time="2026-10-07T00:45:52.095450" 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 errorw.</doc>
<status status="PASS" start="2026-10-07T00:45:52.094530" elapsed="0.000946"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.096059" 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-10-07T00:45:52.095667" elapsed="0.000420"/>
</kw>
<kw name="ClusterManagement__Compute_Derived_Variables" owner="ClusterManagement">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.097159" level="INFO">@{member_index_list} = [ ]</msg>
<var>@{member_index_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:52.096871" elapsed="0.000315"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.097623" level="INFO">@{session_list} = [ ]</msg>
<var>@{session_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:52.097338" elapsed="0.000314"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.098178" 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-10-07T00:45:52.097831" elapsed="0.000375"/>
</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-10-07T00:45:52.098633" elapsed="0.000024"/>
</kw>
<var name="${index}"/>
<status status="NOT RUN" start="2026-10-07T00:45:52.098458" elapsed="0.000243"/>
</iter>
<var>${index}</var>
<value>1</value>
<value>${int_of_members+1}</value>
<status status="NOT RUN" start="2026-10-07T00:45:52.098263" elapsed="0.000465"/>
</for>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.099254" level="INFO">${ClusterManagement__member_index_list} = []</msg>
<arg>\${ClusterManagement__member_index_list}</arg>
<arg>${member_index_list}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-10-07T00:45:52.098910" elapsed="0.000386"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.099821" level="INFO">${ClusterManagement__index_to_ip_mapping} = {}</msg>
<arg>\${ClusterManagement__index_to_ip_mapping}</arg>
<arg>${index_to_ip_mapping}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-10-07T00:45:52.099492" elapsed="0.000369"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.100383" level="INFO">${ClusterManagement__session_list} = []</msg>
<arg>\${ClusterManagement__session_list}</arg>
<arg>${session_list}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-10-07T00:45:52.100056" elapsed="0.000367"/>
</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-10-07T00:45:52.096459" elapsed="0.004021"/>
</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-10-07T00:45:52.090806" elapsed="0.009728"/>
</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-10-07T00:45:52.109303" elapsed="0.000221"/>
</kw>
<msg time="2026-10-07T00:45:52.109571" 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>Conditionally runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-10-07T00:45:52.108670" elapsed="0.000962"/>
</kw>
<arg>phosphorus</arg>
<arg>${kw_name}</arg>
<arg>@{varargs}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Compare ${lower_bound} to vanadium and in case vanadium 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-10-07T00:45:52.108238" elapsed="0.001467"/>
</kw>
<msg time="2026-10-07T00:45:52.109749" 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-10-07T00:45:52.105215" elapsed="0.004629"/>
</kw>
<arg>Collections.Remove Values From List</arg>
<arg>${SHARD_OPER_LIST}</arg>
<arg>entity-ownership</arg>
<doc>Compare phosphorus to vanadium and in case vanadium is at least phosphorus,
run ${kw_name} @{varargs} &amp;{kwargs} and return its value.</doc>
<status status="PASS" start="2026-10-07T00:45:52.104839" elapsed="0.005083"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.110889" 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-10-07T00:45:52.110646" elapsed="0.000287"/>
</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-10-07T00:45:52.114069" 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-10-07T00:45:52.113721" elapsed="0.000375"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.114519" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:52.114245" elapsed="0.000299"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-10-07T00:45:52.114586" elapsed="0.000029"/>
</return>
<msg time="2026-10-07T00:45:52.114719" 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-10-07T00:45:52.113348" elapsed="0.001394"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list.</doc>
<status status="PASS" start="2026-10-07T00:45:52.114889" elapsed="0.000148"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.115517" 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-10-07T00:45:52.115203" elapsed="0.000339"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.115929" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:52.115698" elapsed="0.000255"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.116339" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:52.116106" elapsed="0.000270"/>
</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-10-07T00:45:52.116740" elapsed="0.000023"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds `values` to the end of `list`.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:52.116980" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:52.116837" elapsed="0.000208"/>
</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-10-07T00:45:52.117216" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:52.117074" 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 or task with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:52.117443" elapsed="0.000019"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:52.117288" elapsed="0.000202"/>
</branch>
<status status="NOT RUN" start="2026-10-07T00:45:52.116819" elapsed="0.000694"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-10-07T00:45:52.116591" elapsed="0.000944"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:52.116422" elapsed="0.001137"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-10-07T00:45:52.117595" elapsed="0.000029"/>
</return>
<msg time="2026-10-07T00:45:52.117764" level="INFO">${leader_list} = []</msg>
<msg time="2026-10-07T00:45:52.117807" 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-10-07T00:45:52.112714" elapsed="0.005114"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.118380" level="INFO">Length is 0.</msg>
<msg time="2026-10-07T00:45:52.118454" 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-10-07T00:45:52.117991" elapsed="0.000485"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.119046" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-10-07T00:45:52.118743" elapsed="0.000423">No leader found.</status>
</kw>
<status status="FAIL" start="2026-10-07T00:45:52.118541" elapsed="0.000691">No leader found.</status>
</branch>
<status status="FAIL" start="2026-10-07T00:45:52.118524" elapsed="0.000876">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-10-07T00:45:52.119549" elapsed="0.000021"/>
</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-10-07T00:45:52.119756" elapsed="0.000020"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:52.119818" elapsed="0.000016"/>
</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-10-07T00:45:52.111977" elapsed="0.007953">No leader found.</status>
</kw>
<var name="${shard_name}">inventory</var>
<status status="FAIL" start="2026-10-07T00:45:52.111762" elapsed="0.008233">No leader found.</status>
</iter>
<var>${shard_name}</var>
<value>@{shard_name_list}</value>
<status status="FAIL" start="2026-10-07T00:45:52.111517" elapsed="0.008548">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-10-07T00:45:52.111155" elapsed="0.008999">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-10-07T00:45:52.120379" elapsed="0.000024"/>
</kw>
<doc>Check Status for all shards in OpenFlow application.</doc>
<status status="FAIL" start="2026-10-07T00:45:52.101212" elapsed="0.019276">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-10-07T00:45:52.120686" elapsed="0.000021"/>
</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-10-07T00:45:52.120872" elapsed="0.000019"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${flow_count_after_add}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:52.121080" 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-10-07T00:45:52.121335" elapsed="0.000034"/>
</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-10-07T00:45:52.121587" elapsed="0.000022"/>
</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-10-07T00:45:52.121842" elapsed="0.000021"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${temp_json_config_add}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:52.122053" elapsed="0.000020"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${temp_json_config_get}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:52.122244" elapsed="0.000018"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${temp_json_config_del}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:52.122442" elapsed="0.000019"/>
</kw>
<doc>Check Status for all shards in OpenFlow application and set the logs across cluster nodes.</doc>
<status status="FAIL" start="2026-10-07T00:45:52.100593" elapsed="0.021990">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-10-07T00:45:52.126195" 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-10-07T00:45:52.125839" elapsed="0.000382"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.126636" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:52.126380" elapsed="0.000280"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-10-07T00:45:52.126700" elapsed="0.000029"/>
</return>
<msg time="2026-10-07T00:45:52.126829" 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-10-07T00:45:52.125480" elapsed="0.001372"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list.</doc>
<status status="PASS" start="2026-10-07T00:45:52.126996" elapsed="0.000151"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.127635" 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-10-07T00:45:52.127311" elapsed="0.000351"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.128050" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:52.127810" elapsed="0.000264"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.128457" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:52.128211" elapsed="0.000270"/>
</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-10-07T00:45:52.128868" elapsed="0.000022"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds `values` to the end of `list`.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:52.129120" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:52.128962" elapsed="0.000209"/>
</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-10-07T00:45:52.129332" elapsed="0.000018"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:52.129193" elapsed="0.000203"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:52.129565" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:52.129420" elapsed="0.000198"/>
</branch>
<status status="NOT RUN" start="2026-10-07T00:45:52.128945" elapsed="0.000695"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-10-07T00:45:52.128722" elapsed="0.000941"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:52.128557" elapsed="0.001130"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-10-07T00:45:52.129723" elapsed="0.000025"/>
</return>
<msg time="2026-10-07T00:45:52.129882" level="INFO">${leader_list} = []</msg>
<msg time="2026-10-07T00:45:52.129924" 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-10-07T00:45:52.124854" elapsed="0.005091"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.130531" level="INFO">Length is 0.</msg>
<msg time="2026-10-07T00:45:52.130602" 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-10-07T00:45:52.130122" elapsed="0.000502"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-10-07T00:45:52.131166" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-10-07T00:45:52.130891" elapsed="0.000338">No leader found.</status>
</kw>
<status status="FAIL" start="2026-10-07T00:45:52.130693" elapsed="0.000593">No leader found.</status>
</branch>
<status status="FAIL" start="2026-10-07T00:45:52.130675" elapsed="0.000640">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-10-07T00:45:52.131490" elapsed="0.000020"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an `index` from `list`.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:52.131661" elapsed="0.000018"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:52.131720" elapsed="0.000014"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-10-07T00:45:52.124225" elapsed="0.007587">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-10-07T00:45:53.137630" 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-10-07T00:45:53.136735" elapsed="0.000961"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:53.138671" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:53.138068" elapsed="0.000656"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-10-07T00:45:53.138821" elapsed="0.000090"/>
</return>
<msg time="2026-10-07T00:45:53.139178" 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-10-07T00:45:53.135889" elapsed="0.003341"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list.</doc>
<status status="PASS" start="2026-10-07T00:45:53.139576" elapsed="0.000313"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-10-07T00:45:53.140978" 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-10-07T00:45:53.140283" elapsed="0.000778"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:53.141938" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:53.141410" elapsed="0.000582"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:53.142863" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:53.142330" elapsed="0.000585"/>
</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-10-07T00:45:53.143794" elapsed="0.000049"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds `values` to the end of `list`.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:53.144482" elapsed="0.000046"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:53.144141" elapsed="0.000457"/>
</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-10-07T00:45:53.144955" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:53.144647" elapsed="0.000448"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:53.145483" elapsed="0.000042"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:53.145146" elapsed="0.000443"/>
</branch>
<status status="NOT RUN" start="2026-10-07T00:45:53.144099" elapsed="0.001538"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-10-07T00:45:53.143459" elapsed="0.002230"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:53.143021" elapsed="0.002724"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-10-07T00:45:53.145824" elapsed="0.000059"/>
</return>
<msg time="2026-10-07T00:45:53.146210" level="INFO">${leader_list} = []</msg>
<msg time="2026-10-07T00:45:53.146303" 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-10-07T00:45:53.134495" elapsed="0.011876"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-10-07T00:45:53.147322" level="INFO">Length is 0.</msg>
<msg time="2026-10-07T00:45:53.147498" 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-10-07T00:45:53.146741" elapsed="0.000807"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-10-07T00:45:53.148776" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-10-07T00:45:53.148154" elapsed="0.000771">No leader found.</status>
</kw>
<status status="FAIL" start="2026-10-07T00:45:53.147687" elapsed="0.001398">No leader found.</status>
</branch>
<status status="FAIL" start="2026-10-07T00:45:53.147650" elapsed="0.001501">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-10-07T00:45:53.149489" elapsed="0.000046"/>
</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-10-07T00:45:53.149871" elapsed="0.000044"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:53.150017" elapsed="0.000062"/>
</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-10-07T00:45:53.132855" elapsed="0.017404">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-10-07T00:45:54.156551" 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-10-07T00:45:54.155652" elapsed="0.000961"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:54.157603" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:54.156957" elapsed="0.000701"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-10-07T00:45:54.157752" elapsed="0.000072"/>
</return>
<msg time="2026-10-07T00:45:54.158085" 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-10-07T00:45:54.154805" elapsed="0.003334"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list.</doc>
<status status="PASS" start="2026-10-07T00:45:54.158502" elapsed="0.000303"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-10-07T00:45:54.159914" 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-10-07T00:45:54.159205" elapsed="0.000764"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:54.160865" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:54.160328" elapsed="0.000589"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:54.161794" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:54.161265" elapsed="0.000581"/>
</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-10-07T00:45:54.162738" elapsed="0.000053"/>
</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-10-07T00:45:54.163432" elapsed="0.000045"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:54.163089" elapsed="0.000457"/>
</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-10-07T00:45:54.163906" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:54.163597" elapsed="0.000417"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:54.164427" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:54.164093" elapsed="0.000439"/>
</branch>
<status status="NOT RUN" start="2026-10-07T00:45:54.163014" elapsed="0.001565"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-10-07T00:45:54.162382" elapsed="0.002249"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:54.161951" elapsed="0.002732"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-10-07T00:45:54.164766" elapsed="0.000056"/>
</return>
<msg time="2026-10-07T00:45:54.165143" level="INFO">${leader_list} = []</msg>
<msg time="2026-10-07T00:45:54.165238" 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-10-07T00:45:54.153432" elapsed="0.011856"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-10-07T00:45:54.166247" level="INFO">Length is 0.</msg>
<msg time="2026-10-07T00:45:54.166424" 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-10-07T00:45:54.165668" elapsed="0.000806"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-10-07T00:45:54.167734" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-10-07T00:45:54.167086" elapsed="0.000810">No leader found.</status>
</kw>
<status status="FAIL" start="2026-10-07T00:45:54.166610" elapsed="0.001447">No leader found.</status>
</branch>
<status status="FAIL" start="2026-10-07T00:45:54.166574" elapsed="0.001551">No leader found.</status>
</if>
<kw name="Length Should Be" owner="BuiltIn">
<arg>${leader_list}</arg>
<arg>${1}</arg>
<arg>Too many Leaders.</arg>
<doc>Verifies that the length of the given item is correct.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:54.168464" elapsed="0.000045"/>
</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-10-07T00:45:54.168841" elapsed="0.000040"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:54.168969" elapsed="0.000032"/>
</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-10-07T00:45:54.151383" elapsed="0.017823">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-10-07T00:45:55.175012" 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-10-07T00:45:55.174173" elapsed="0.000933"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:55.176104" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:55.175468" elapsed="0.000692"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-10-07T00:45:55.176255" elapsed="0.000073"/>
</return>
<msg time="2026-10-07T00:45:55.176577" 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-10-07T00:45:55.173324" elapsed="0.003304"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list.</doc>
<status status="PASS" start="2026-10-07T00:45:55.176950" elapsed="0.000340"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-10-07T00:45:55.178425" 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-10-07T00:45:55.177680" elapsed="0.000801"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:55.179373" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:55.178807" elapsed="0.000622"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:55.180669" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:55.179739" elapsed="0.000987"/>
</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-10-07T00:45:55.181569" elapsed="0.000062"/>
</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-10-07T00:45:55.182269" elapsed="0.000046"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:55.181918" elapsed="0.000488"/>
</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-10-07T00:45:55.182767" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:55.182457" elapsed="0.000419"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:55.183263" elapsed="0.000042"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:55.182924" elapsed="0.000467"/>
</branch>
<status status="NOT RUN" start="2026-10-07T00:45:55.181876" elapsed="0.001564"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-10-07T00:45:55.181215" elapsed="0.002274"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:55.180832" elapsed="0.002709"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-10-07T00:45:55.183620" elapsed="0.000058"/>
</return>
<msg time="2026-10-07T00:45:55.183971" level="INFO">${leader_list} = []</msg>
<msg time="2026-10-07T00:45:55.184098" 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-10-07T00:45:55.171925" elapsed="0.012223"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-10-07T00:45:55.185119" level="INFO">Length is 0.</msg>
<msg time="2026-10-07T00:45:55.185284" 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-10-07T00:45:55.184532" elapsed="0.000802"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-10-07T00:45:55.186594" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-10-07T00:45:55.185943" elapsed="0.000802">No leader found.</status>
</kw>
<status status="FAIL" start="2026-10-07T00:45:55.185501" elapsed="0.001374">No leader found.</status>
</branch>
<status status="FAIL" start="2026-10-07T00:45:55.185464" elapsed="0.001475">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-10-07T00:45:55.187285" elapsed="0.000045"/>
</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-10-07T00:45:55.187708" elapsed="0.000043"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:55.187844" elapsed="0.000031"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-10-07T00:45:55.170249" elapsed="0.017833">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-10-07T00:45:56.193831" 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-10-07T00:45:56.192961" elapsed="0.000933"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:56.194901" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:56.194264" elapsed="0.000691"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-10-07T00:45:56.195079" elapsed="0.000075"/>
</return>
<msg time="2026-10-07T00:45:56.195467" 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-10-07T00:45:56.192111" elapsed="0.003447"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list.</doc>
<status status="PASS" start="2026-10-07T00:45:56.196019" elapsed="0.000376"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-10-07T00:45:56.197544" 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-10-07T00:45:56.196776" elapsed="0.000825"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:56.198506" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:56.197931" elapsed="0.000628"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:56.199435" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:56.198862" elapsed="0.000627"/>
</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-10-07T00:45:56.200400" elapsed="0.000051"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds `values` to the end of `list`.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:56.200940" elapsed="0.000044"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:56.200624" elapsed="0.000557"/>
</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-10-07T00:45:56.201571" elapsed="0.000042"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:56.201237" elapsed="0.000446"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:56.202071" elapsed="0.000043"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:56.201730" elapsed="0.000448"/>
</branch>
<status status="NOT RUN" start="2026-10-07T00:45:56.200577" elapsed="0.001648"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-10-07T00:45:56.200006" elapsed="0.002268"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:56.199609" elapsed="0.002719"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-10-07T00:45:56.202433" elapsed="0.000061"/>
</return>
<msg time="2026-10-07T00:45:56.202787" level="INFO">${leader_list} = []</msg>
<msg time="2026-10-07T00:45:56.202881" 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-10-07T00:45:56.190724" elapsed="0.012205"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-10-07T00:45:56.203898" level="INFO">Length is 0.</msg>
<msg time="2026-10-07T00:45:56.204080" 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-10-07T00:45:56.203325" elapsed="0.000807"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-10-07T00:45:56.205411" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-10-07T00:45:56.204750" elapsed="0.000809">No leader found.</status>
</kw>
<status status="FAIL" start="2026-10-07T00:45:56.204268" elapsed="0.001419">No leader found.</status>
</branch>
<status status="FAIL" start="2026-10-07T00:45:56.204232" elapsed="0.001881">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-10-07T00:45:56.206456" elapsed="0.000047"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an `index` from `list`.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:56.206839" elapsed="0.000041"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:56.206971" elapsed="0.000032"/>
</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-10-07T00:45:56.189139" elapsed="0.018075">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-10-07T00:45:57.212978" 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-10-07T00:45:57.212143" elapsed="0.000927"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:57.214008" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:57.213430" elapsed="0.000662"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-10-07T00:45:57.214183" elapsed="0.000073"/>
</return>
<msg time="2026-10-07T00:45:57.214507" 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-10-07T00:45:57.211275" elapsed="0.003283"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list.</doc>
<status status="PASS" start="2026-10-07T00:45:57.214952" elapsed="0.000341"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-10-07T00:45:57.216424" 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-10-07T00:45:57.215682" elapsed="0.000797"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:57.217361" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:57.216800" elapsed="0.000616"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:57.218248" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:57.217717" elapsed="0.000584"/>
</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-10-07T00:45:57.219149" elapsed="0.000050"/>
</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-10-07T00:45:57.219705" elapsed="0.000044"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:57.219380" elapsed="0.000438"/>
</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-10-07T00:45:57.220314" elapsed="0.000065"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:57.219877" elapsed="0.000573"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:57.220813" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:57.220501" elapsed="0.000416"/>
</branch>
<status status="NOT RUN" start="2026-10-07T00:45:57.219341" elapsed="0.001623"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-10-07T00:45:57.218791" elapsed="0.002222"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:57.218424" elapsed="0.002673"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-10-07T00:45:57.221183" elapsed="0.000056"/>
</return>
<msg time="2026-10-07T00:45:57.221557" level="INFO">${leader_list} = []</msg>
<msg time="2026-10-07T00:45:57.221651" 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-10-07T00:45:57.209879" elapsed="0.011820"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-10-07T00:45:57.222686" level="INFO">Length is 0.</msg>
<msg time="2026-10-07T00:45:57.222841" 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-10-07T00:45:57.222101" elapsed="0.000790"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-10-07T00:45:57.224127" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-10-07T00:45:57.223520" elapsed="0.000755">No leader found.</status>
</kw>
<status status="FAIL" start="2026-10-07T00:45:57.223057" elapsed="0.001377">No leader found.</status>
</branch>
<status status="FAIL" start="2026-10-07T00:45:57.222992" elapsed="0.001508">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-10-07T00:45:57.224816" elapsed="0.000043"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an `index` from `list`.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:57.225226" elapsed="0.000041"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:57.225380" elapsed="0.000032"/>
</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-10-07T00:45:57.208283" elapsed="0.017304">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-10-07T00:45:58.231775" 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-10-07T00:45:58.230906" elapsed="0.000933"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:58.232816" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:58.232209" elapsed="0.000662"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-10-07T00:45:58.232963" elapsed="0.000100"/>
</return>
<msg time="2026-10-07T00:45:58.233297" 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-10-07T00:45:58.229656" elapsed="0.003713"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list.</doc>
<status status="PASS" start="2026-10-07T00:45:58.233698" elapsed="0.000294"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-10-07T00:45:58.235117" 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-10-07T00:45:58.234414" elapsed="0.000759"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:58.236056" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:58.235521" elapsed="0.000591"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:58.236953" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:58.236444" elapsed="0.000561"/>
</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-10-07T00:45:58.237835" elapsed="0.000050"/>
</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-10-07T00:45:58.238420" elapsed="0.000044"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:58.238080" elapsed="0.000455"/>
</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-10-07T00:45:58.238888" elapsed="0.000041"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:58.238585" elapsed="0.000533"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:58.239517" elapsed="0.000043"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:58.239176" elapsed="0.000448"/>
</branch>
<status status="NOT RUN" start="2026-10-07T00:45:58.238011" elapsed="0.001661"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-10-07T00:45:58.237505" elapsed="0.002216"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:58.237134" elapsed="0.002639"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-10-07T00:45:58.239855" elapsed="0.000056"/>
</return>
<msg time="2026-10-07T00:45:58.240230" level="INFO">${leader_list} = []</msg>
<msg time="2026-10-07T00:45:58.240341" 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-10-07T00:45:58.228245" elapsed="0.012147"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-10-07T00:45:58.241411" level="INFO">Length is 0.</msg>
<msg time="2026-10-07T00:45:58.241571" 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-10-07T00:45:58.240764" elapsed="0.000857"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-10-07T00:45:58.242852" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-10-07T00:45:58.242238" elapsed="0.000779">No leader found.</status>
</kw>
<status status="FAIL" start="2026-10-07T00:45:58.241763" elapsed="0.001417">No leader found.</status>
</branch>
<status status="FAIL" start="2026-10-07T00:45:58.241726" elapsed="0.001519">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-10-07T00:45:58.243675" elapsed="0.000048"/>
</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-10-07T00:45:58.244090" elapsed="0.000044"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:58.244226" elapsed="0.000032"/>
</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-10-07T00:45:58.226609" elapsed="0.017846">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-10-07T00:45:59.250274" 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-10-07T00:45:59.249423" elapsed="0.000935"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:59.251329" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:59.250700" elapsed="0.000686"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-10-07T00:45:59.251493" elapsed="0.000072"/>
</return>
<msg time="2026-10-07T00:45:59.251791" 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-10-07T00:45:59.248576" elapsed="0.003266"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list.</doc>
<status status="PASS" start="2026-10-07T00:45:59.252205" elapsed="0.000332"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-10-07T00:45:59.253629" 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-10-07T00:45:59.252900" elapsed="0.000785"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:59.254582" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:59.254018" elapsed="0.000618"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:45:59.255497" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:45:59.254939" elapsed="0.000612"/>
</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-10-07T00:45:59.256400" elapsed="0.000059"/>
</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-10-07T00:45:59.256940" elapsed="0.000043"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:59.256621" elapsed="0.000462"/>
</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-10-07T00:45:59.257482" elapsed="0.000366"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:59.257144" elapsed="0.000781"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-10-07T00:45:59.258342" elapsed="0.000044"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:45:59.257974" elapsed="0.000573"/>
</branch>
<status status="NOT RUN" start="2026-10-07T00:45:59.256583" elapsed="0.002015"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-10-07T00:45:59.255991" elapsed="0.002655"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:59.255649" elapsed="0.003048"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-10-07T00:45:59.258775" elapsed="0.000057"/>
</return>
<msg time="2026-10-07T00:45:59.259155" level="INFO">${leader_list} = []</msg>
<msg time="2026-10-07T00:45:59.259249" 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-10-07T00:45:59.247182" elapsed="0.012116"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-10-07T00:45:59.260259" level="INFO">Length is 0.</msg>
<msg time="2026-10-07T00:45:59.260435" 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-10-07T00:45:59.259686" elapsed="0.000799"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-10-07T00:45:59.261694" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-10-07T00:45:59.261091" elapsed="0.000744">No leader found.</status>
</kw>
<status status="FAIL" start="2026-10-07T00:45:59.260624" elapsed="0.001337">No leader found.</status>
</branch>
<status status="FAIL" start="2026-10-07T00:45:59.260588" elapsed="0.001465">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-10-07T00:45:59.262387" elapsed="0.000045"/>
</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-10-07T00:45:59.262765" elapsed="0.000043"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-10-07T00:45:59.262901" elapsed="0.000032"/>
</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-10-07T00:45:59.245552" elapsed="0.017585">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-10-07T00:46:00.268924" 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-10-07T00:46:00.268073" elapsed="0.000913"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:46:00.269991" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:46:00.269407" elapsed="0.000668"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-10-07T00:46:00.270170" elapsed="0.000089"/>
</return>
<msg time="2026-10-07T00:46:00.270517" 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-10-07T00:46:00.267220" elapsed="0.003350"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list.</doc>
<status status="PASS" start="2026-10-07T00:46:00.270906" elapsed="0.000373"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-10-07T00:46:00.272411" 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-10-07T00:46:00.271672" elapsed="0.000795"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:46:00.273370" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:46:00.272791" elapsed="0.000634"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:46:00.274259" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:46:00.273728" elapsed="0.000606"/>
</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-10-07T00:46:00.275140" elapsed="0.000050"/>
</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-10-07T00:46:00.275700" elapsed="0.000044"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:46:00.275387" elapsed="0.000427"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds `values` to the end of `list`.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:00.276200" elapsed="0.000043"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:46:00.275867" elapsed="0.000467"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:00.276703" elapsed="0.000042"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:46:00.276384" elapsed="0.000422"/>
</branch>
<status status="NOT RUN" start="2026-10-07T00:46:00.275349" elapsed="0.001631"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-10-07T00:46:00.274782" elapsed="0.002285"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-10-07T00:46:00.274436" elapsed="0.002687"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-10-07T00:46:00.277202" elapsed="0.000057"/>
</return>
<msg time="2026-10-07T00:46:00.277569" level="INFO">${leader_list} = []</msg>
<msg time="2026-10-07T00:46:00.277663" 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-10-07T00:46:00.265759" elapsed="0.011952"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-10-07T00:46:00.278668" level="INFO">Length is 0.</msg>
<msg time="2026-10-07T00:46:00.278823" 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-10-07T00:46:00.278101" elapsed="0.000771"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-10-07T00:46:00.280267" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-10-07T00:46:00.279536" elapsed="0.000891">No leader found.</status>
</kw>
<status status="FAIL" start="2026-10-07T00:46:00.279007" elapsed="0.001548">No leader found.</status>
</branch>
<status status="FAIL" start="2026-10-07T00:46:00.278972" elapsed="0.001646">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-10-07T00:46:00.280929" elapsed="0.000056"/>
</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-10-07T00:46:00.281416" elapsed="0.000044"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-10-07T00:46:00.281549" elapsed="0.000032"/>
</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-10-07T00:46:00.264156" elapsed="0.017598">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-10-07T00:46:01.287985" 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-10-07T00:46:01.287145" elapsed="0.000934"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:46:01.289130" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:46:01.288468" elapsed="0.000721"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-10-07T00:46:01.289283" elapsed="0.000097"/>
</return>
<msg time="2026-10-07T00:46:01.289608" 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-10-07T00:46:01.286321" elapsed="0.003339"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list.</doc>
<status status="PASS" start="2026-10-07T00:46:01.289991" elapsed="0.000346"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-10-07T00:46:01.291443" 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-10-07T00:46:01.290705" elapsed="0.000793"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:46:01.292387" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:46:01.291822" elapsed="0.000619"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:46:01.293322" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:46:01.292748" elapsed="0.000630"/>
</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-10-07T00:46:01.294196" elapsed="0.000051"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds `values` to the end of `list`.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:01.294755" elapsed="0.000044"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:46:01.294439" elapsed="0.000428"/>
</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-10-07T00:46:01.295353" elapsed="0.000044"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:46:01.294918" elapsed="0.000550"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:01.295828" elapsed="0.000042"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:46:01.295517" elapsed="0.000417"/>
</branch>
<status status="NOT RUN" start="2026-10-07T00:46:01.294401" elapsed="0.001580"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-10-07T00:46:01.293824" elapsed="0.002232"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-10-07T00:46:01.293476" elapsed="0.002723"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-10-07T00:46:01.296285" elapsed="0.000080"/>
</return>
<msg time="2026-10-07T00:46:01.296658" level="INFO">${leader_list} = []</msg>
<msg time="2026-10-07T00:46:01.296751" 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-10-07T00:46:01.284904" elapsed="0.011895"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-10-07T00:46:01.297777" level="INFO">Length is 0.</msg>
<msg time="2026-10-07T00:46:01.297935" 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-10-07T00:46:01.297192" elapsed="0.000793"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-10-07T00:46:01.299246" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-10-07T00:46:01.298626" elapsed="0.000775">No leader found.</status>
</kw>
<status status="FAIL" start="2026-10-07T00:46:01.298156" elapsed="0.001372">No leader found.</status>
</branch>
<status status="FAIL" start="2026-10-07T00:46:01.298119" elapsed="0.001475">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-10-07T00:46:01.299907" elapsed="0.000045"/>
</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-10-07T00:46:01.300357" elapsed="0.000045"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-10-07T00:46:01.300495" elapsed="0.000032"/>
</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-10-07T00:46:01.282808" elapsed="0.017893">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-10-07T00:46:02.306458" 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-10-07T00:46:02.305573" elapsed="0.000949"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:46:02.307501" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:46:02.306862" elapsed="0.000693"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-10-07T00:46:02.307661" elapsed="0.000073"/>
</return>
<msg time="2026-10-07T00:46:02.307959" 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-10-07T00:46:02.304721" elapsed="0.003290"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list.</doc>
<status status="PASS" start="2026-10-07T00:46:02.308390" elapsed="0.000295"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-10-07T00:46:02.309792" 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-10-07T00:46:02.309081" elapsed="0.000765"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:46:02.311150" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:46:02.310199" elapsed="0.001008"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-10-07T00:46:02.312081" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Creates and returns a list containing the given items.</doc>
<status status="PASS" start="2026-10-07T00:46:02.311541" elapsed="0.000595"/>
</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-10-07T00:46:02.312938" elapsed="0.000050"/>
</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-10-07T00:46:02.313521" elapsed="0.000044"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:46:02.313182" elapsed="0.000454"/>
</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-10-07T00:46:02.313989" elapsed="0.000070"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:46:02.313685" elapsed="0.000445"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:02.314525" elapsed="0.000043"/>
</kw>
<status status="NOT RUN" start="2026-10-07T00:46:02.314178" elapsed="0.000454"/>
</branch>
<status status="NOT RUN" start="2026-10-07T00:46:02.313145" elapsed="0.001535"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-10-07T00:46:02.312611" elapsed="0.002117"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-10-07T00:46:02.312236" elapsed="0.002542"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-10-07T00:46:02.314856" elapsed="0.000055"/>
</return>
<msg time="2026-10-07T00:46:02.315346" level="INFO">${leader_list} = []</msg>
<msg time="2026-10-07T00:46:02.315441" 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-10-07T00:46:02.303347" elapsed="0.012142"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-10-07T00:46:02.316459" level="INFO">Length is 0.</msg>
<msg time="2026-10-07T00:46:02.316612" 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-10-07T00:46:02.315855" elapsed="0.000807"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-10-07T00:46:02.317884" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test or task with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-10-07T00:46:02.317282" elapsed="0.000738">No leader found.</status>
</kw>
<status status="FAIL" start="2026-10-07T00:46:02.316801" elapsed="0.001379">No leader found.</status>
</branch>
<status status="FAIL" start="2026-10-07T00:46:02.316765" elapsed="0.001482">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-10-07T00:46:02.318584" elapsed="0.000045"/>
</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-10-07T00:46:02.318966" elapsed="0.000042"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-10-07T00:46:02.319136" elapsed="0.000036"/>
</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-10-07T00:46:02.301713" elapsed="0.017671">No leader found.</status>
</kw>
<msg time="2026-10-07T00:46:02.319578" 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-10-07T00:45:52.123640" elapsed="10.196152">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-10-07T00:46:02.320364" elapsed="0.000047"/>
</kw>
<return>
<value>${inv_conf_leader}</value>
<value>${inv_conf_followers_list}</value>
<status status="NOT RUN" start="2026-10-07T00:46:02.320494" elapsed="0.000031"/>
</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-10-07T00:45:52.123269" elapsed="10.197426">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-10-07T00:46:02.321124" elapsed="0.000044"/>
</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-10-07T00:46:02.321569" elapsed="0.000042"/>
</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-10-07T00:46:02.321956" elapsed="0.000041"/>
</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-10-07T00:46:02.322370" elapsed="0.000042"/>
</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-10-07T00:46:02.322736" elapsed="0.000040"/>
</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-10-07T00:46:02.323121" elapsed="0.000042"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Follower_Node_1}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:02.323559" elapsed="0.000042"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Follower_Node_2}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:02.323972" elapsed="0.000040"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Inventory_Leader}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:02.324428" elapsed="0.000060"/>
</kw>
<doc>Find a leader and followers in the inventory config shard</doc>
<status status="FAIL" start="2026-10-07T00:45:52.122781" elapsed="10.201977">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-10-07T00:46:02.329719" 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-10-07T00:46:02.326477" elapsed="0.003327">Variable '${Follower_Node_1}' not found.</status>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${mininet_conn_id}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:02.330283" elapsed="0.000068"/>
</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-10-07T00:46:02.330712" elapsed="0.000041"/>
</kw>
<doc>Start mininet with connection to follower node1.</doc>
<status status="FAIL" start="2026-10-07T00:46:02.325205" elapsed="0.005916">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-10-07T00:46:02.333155" level="INFO">${config_datastore_write_start_time} = 2026-10-07 00:46:02.333</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-10-07T00:46:02.332628" elapsed="0.000584"/>
</kw>
<kw name="Add Bulk Flow In Node" owner="BulkomaticKeywords">
<msg time="2026-10-07T00:46:02.342869" 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-10-07T00:46:02.339738" elapsed="0.003208">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-10-07T00:46:02.343374" elapsed="0.000047"/>
</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-10-07T00:46:02.343747" elapsed="0.000041"/>
</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-10-07T00:46:02.344172" elapsed="0.000042"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_write_start_time}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:02.344624" elapsed="0.000042"/>
</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-10-07T00:46:02.344948" elapsed="0.000025"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The config_datastore_write_time is ${config_datastore_write_time}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:02.345190" elapsed="0.000026"/>
</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-10-07T00:46:02.345429" elapsed="0.000026"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_write_time}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:02.345684" elapsed="0.000025"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_write_rate}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:02.345943" elapsed="0.000025"/>
</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-10-07T00:46:02.331520" elapsed="0.014622">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-10-07T00:46:02.347216" level="INFO">${Mininet_write_start_time} = 2026-10-07 00:46:02.347</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-10-07T00:46:02.346921" elapsed="0.000330"/>
</kw>
<kw name="Verify Aggregate Flow From Mininet Session" owner="MininetKeywords">
<msg time="2026-10-07T00:46:02.349438" 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-10-07T00:46:02.347507" elapsed="0.001981">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-10-07T00:46:02.349720" elapsed="0.000027"/>
</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-10-07T00:46:02.349952" elapsed="0.000025"/>
</kw>
<kw name="Evaluate" owner="BuiltIn">
<var>${Mininet_write_rate}</var>
<arg>${flow_count_after_add} / ${Mininet_write_time}</arg>
<doc>Evaluates the given expression in Python and returns the result.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:02.350215" elapsed="0.000025"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>${\n}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:02.350460" elapsed="0.000025"/>
</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-10-07T00:46:02.350684" elapsed="0.000025"/>
</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-10-07T00:46:02.350906" elapsed="0.000024"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Mininet_write_time}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:02.351179" elapsed="0.000026"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Mininet_write_rate}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:46:02.351451" elapsed="0.000026"/>
</kw>
<doc>Verify 100K flows are installed in 10 switches.</doc>
<status status="FAIL" start="2026-10-07T00:46:02.346400" elapsed="0.005228">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-10-07T00:46:02.356831" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:02.354905" elapsed="0.001973">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:04.365417" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:04.361445" elapsed="0.004104">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:06.373119" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:06.369931" elapsed="0.003282">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:08.380108" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:08.376910" elapsed="0.003290">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:10.387416" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:10.384022" elapsed="0.003485">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:12.394647" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:12.391318" elapsed="0.003418">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:14.398824" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:14.397061" elapsed="0.001830">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:16.405780" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:16.402648" elapsed="0.003226">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:18.412938" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:18.409528" elapsed="0.003525">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:20.419827" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:20.416688" elapsed="0.003227">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:22.426688" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:22.423536" elapsed="0.003241">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:24.433573" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:24.430423" elapsed="0.003239">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:26.441211" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:26.437735" elapsed="0.003579">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:28.448303" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:28.445127" elapsed="0.003291">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:30.455287" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:30.452134" elapsed="0.003243">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:32.462490" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:32.459349" elapsed="0.003230">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:34.471871" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:34.468329" elapsed="0.003752">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:36.479104" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:36.475917" elapsed="0.003278">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:38.485740" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:38.482635" elapsed="0.003186">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:40.492724" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:40.489584" elapsed="0.003228">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:42.500369" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:42.496922" elapsed="0.003556">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:44.507606" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:44.504209" elapsed="0.003485">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:46.514289" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:46.511193" elapsed="0.003176">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:48.521105" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:48.517889" elapsed="0.003307">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:50.528413" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:50.525189" elapsed="0.003317">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:52.535793" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:52.532328" elapsed="0.003587">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:54.542745" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:54.539589" elapsed="0.003262">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:56.550640" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:56.546868" elapsed="0.003891">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:46:58.558924" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:46:58.555476" elapsed="0.003571">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:00.569349" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:00.564533" elapsed="0.004944">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:02.576591" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:02.573409" elapsed="0.003273">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:04.583499" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:04.580336" elapsed="0.003253">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:06.590569" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:06.587254" elapsed="0.003402">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:08.597668" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:08.594497" elapsed="0.003282">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:10.606009" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:10.601992" elapsed="0.004144">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:12.612936" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:12.609728" elapsed="0.003325">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:14.620122" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:14.616955" elapsed="0.003255">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:16.627098" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:16.623918" elapsed="0.003274">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:18.634093" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:18.630906" elapsed="0.003279">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:20.641967" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:20.638506" elapsed="0.003595">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:22.647221" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:22.645017" elapsed="0.002275">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:24.654431" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:24.651287" elapsed="0.003250">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:26.661472" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:26.658271" elapsed="0.003304">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:28.669132" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:28.665922" elapsed="0.003303">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:30.672841" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:30.671320" elapsed="0.001576">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:32.678337" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:32.675980" elapsed="0.002429">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:34.685230" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:34.682086" elapsed="0.003234">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:36.692468" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:36.689012" elapsed="0.003546">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:38.699536" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:38.696384" elapsed="0.003242">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:40.707310" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:40.703765" elapsed="0.003661">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:42.714699" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:42.711473" elapsed="0.003322">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:44.721980" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:44.718609" elapsed="0.003496">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:46.729316" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:46.726144" elapsed="0.003264">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:48.736983" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:48.733547" elapsed="0.003557">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:50.744582" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:50.741441" elapsed="0.003233">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:52.751492" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:52.748333" elapsed="0.003249">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:54.762158" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:54.757017" elapsed="0.005335">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:56.771216" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:56.767102" elapsed="0.004229">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:47:58.776155" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:47:58.773984" elapsed="0.002237">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:00.780688" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:00.778691" elapsed="0.002060">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:02.784236" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:02.782639" elapsed="0.001645">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:04.791186" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:04.787935" elapsed="0.003344">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:06.798271" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:06.795006" elapsed="0.003359">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:08.805360" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:08.802206" elapsed="0.003241">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:10.812602" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:10.809393" elapsed="0.003303">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:12.819489" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:12.816230" elapsed="0.003341">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:14.826092" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:14.822941" elapsed="0.003232">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:16.833478" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:16.830288" elapsed="0.003284">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:18.841154" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:18.837568" elapsed="0.003683">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:20.848410" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:20.845121" elapsed="0.003385">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:22.857615" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:22.852410" elapsed="0.005305">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:24.864395" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:24.861246" elapsed="0.003236">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:26.871227" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:26.868104" elapsed="0.003209">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:28.874909" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:28.873204" elapsed="0.001765">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:30.882072" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:30.878862" elapsed="0.003303">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:32.889051" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:32.885852" elapsed="0.003291">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:34.895713" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:34.892608" elapsed="0.003185">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:36.902672" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:36.899435" elapsed="0.003331">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:38.906148" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:38.904671" elapsed="0.001526">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:40.913401" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:40.909933" elapsed="0.003564">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:42.921394" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:42.917872" elapsed="0.003618">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:44.928460" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:44.925147" elapsed="0.003405">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:46.935692" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:46.932413" elapsed="0.003378">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:48.942576" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:48.939444" elapsed="0.003234">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:50.949630" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:50.946463" elapsed="0.003258">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:52.956779" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:52.953591" elapsed="0.003281">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:54.964134" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:54.960665" elapsed="0.003563">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:56.971225" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:56.968056" elapsed="0.003258">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:48:58.978230" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:48:58.975066" elapsed="0.003256">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:00.985305" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:00.982118" elapsed="0.003283">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:02.992409" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:02.989243" elapsed="0.003257">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:04.999692" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:04.996413" elapsed="0.003374">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:07.006985" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:07.003541" elapsed="0.003566">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:09.014465" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:09.011111" elapsed="0.003464">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:11.021659" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:11.018352" elapsed="0.003429">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:13.028680" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:13.025515" elapsed="0.003257">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:15.035751" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:15.032567" elapsed="0.003278">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:17.042824" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:17.039654" elapsed="0.003264">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:19.047650" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:19.045539" elapsed="0.002177">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:21.054866" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:21.051455" elapsed="0.003519">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:23.061962" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:23.058752" elapsed="0.003327">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:25.069112" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:25.065801" elapsed="0.003405">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:27.076020" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:27.072847" elapsed="0.003288">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:29.082975" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:29.079798" elapsed="0.003291">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:31.090201" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:31.086884" elapsed="0.003408">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:33.097096" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:33.093872" elapsed="0.003317">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:35.104335" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:35.101177" elapsed="0.003251">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:37.111405" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:37.108211" elapsed="0.003287">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:39.119263" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:39.115638" elapsed="0.003735">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:41.126444" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:41.123270" elapsed="0.003267">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:43.131728" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:43.129625" elapsed="0.002178">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:45.137451" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:45.134995" elapsed="0.002534">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:47.145545" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:47.141681" elapsed="0.003967">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:49.152676" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:49.149501" elapsed="0.003269">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:51.159717" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:51.156531" elapsed="0.003278">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:53.166659" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:53.163492" elapsed="0.003259">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:55.173624" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:55.170454" elapsed="0.003261">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:57.180658" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:57.177459" elapsed="0.003292">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:49:59.188230" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:49:59.184612" elapsed="0.003717">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:01.195600" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:01.192452" elapsed="0.003240">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:03.202617" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:03.199425" elapsed="0.003288">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:05.209850" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:05.206505" elapsed="0.003447">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:07.216974" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:07.213741" elapsed="0.003357">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:09.221650" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:09.219614" elapsed="0.002101">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:11.228790" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:11.225543" elapsed="0.003347">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:13.236272" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:13.232703" elapsed="0.003687">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:15.243662" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:15.240291" elapsed="0.003504">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:17.250950" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:17.247761" elapsed="0.003308">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:19.257549" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:19.254596" elapsed="0.003038">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:21.265062" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:21.261686" elapsed="0.003481">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:23.268506" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:23.267074" elapsed="0.001481">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:25.275117" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:25.271982" elapsed="0.003218">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:27.282316" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:27.279100" elapsed="0.003306">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:29.289744" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:29.286297" elapsed="0.003546">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:31.296690" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:31.293519" elapsed="0.003260">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:33.303679" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:33.300467" elapsed="0.003308">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:35.310620" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:35.307473" elapsed="0.003257">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:37.317577" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:37.314418" elapsed="0.003271">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:39.325326" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:39.321569" elapsed="0.003856">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:41.332291" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:41.329130" elapsed="0.003252">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:43.339224" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:43.336016" elapsed="0.003297">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:45.346169" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:45.342991" elapsed="0.003269">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:47.353165" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:47.349911" elapsed="0.003349">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:49.360315" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:49.357067" elapsed="0.003339">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:51.367142" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:51.363977" elapsed="0.003257">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:53.374480" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:53.371294" elapsed="0.003292">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:55.381859" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:55.378410" elapsed="0.003540">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:57.388879" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:57.385737" elapsed="0.003233">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:50:59.395899" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:50:59.392634" elapsed="0.003361">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:01.402829" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:01.399673" elapsed="0.003245">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:03.409862" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:03.406707" elapsed="0.003246">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:05.417392" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:05.413706" elapsed="0.003799">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:07.424377" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:07.421219" elapsed="0.003268">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:09.431402" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:09.428242" elapsed="0.003268">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:11.438527" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:11.435268" elapsed="0.003352">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:13.445689" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:13.442522" elapsed="0.003257">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:15.452781" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:15.449596" elapsed="0.003277">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:17.459793" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:17.456631" elapsed="0.003254">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:19.467063" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:19.463837" elapsed="0.003319">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:21.474111" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:21.470899" elapsed="0.003304">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:23.481208" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:23.477987" elapsed="0.003315">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:25.488397" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:25.485009" elapsed="0.003487">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:27.495466" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:27.492271" elapsed="0.003287">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:29.502724" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:29.499572" elapsed="0.003244">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:31.509905" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:31.506478" elapsed="0.003520">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:33.516923" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:33.513749" elapsed="0.003265">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:35.523842" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:35.520655" elapsed="0.003280">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:37.531237" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:37.527913" elapsed="0.003438">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:39.538271" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:39.535060" elapsed="0.003304">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:41.545249" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:41.542083" elapsed="0.003259">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:43.552244" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:43.549075" elapsed="0.003260">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:45.559539" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:45.556359" elapsed="0.003270">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:47.567447" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:47.564184" elapsed="0.003361">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:49.574506" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:49.571257" elapsed="0.003344">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:51.581677" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:51.578484" elapsed="0.003286">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:53.588809" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:53.585524" elapsed="0.003380">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:55.592239" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:55.590783" elapsed="0.001507">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:57.600175" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:57.596449" elapsed="0.003824">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:51:59.607177" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:51:59.603968" elapsed="0.003302">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:01.614189" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:01.610957" elapsed="0.003323">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:03.621088" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:03.617889" elapsed="0.003291">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:05.628159" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:05.624865" elapsed="0.003392">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:07.635700" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:07.632227" elapsed="0.003590">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:09.642899" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:09.639642" elapsed="0.003379">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:11.650366" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:11.647208" elapsed="0.003249">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:13.657743" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:13.654380" elapsed="0.003459">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:15.664743" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:15.661577" elapsed="0.003263">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:17.672123" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:17.668820" elapsed="0.003397">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:19.681115" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:19.676636" elapsed="0.004618">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:21.687055" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:21.684565" elapsed="0.002586">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:23.691280" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:23.689294" elapsed="0.002041">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:25.697444" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:25.693852" elapsed="0.003694">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:27.703243" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:27.700723" elapsed="0.002631">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:29.710540" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:29.707232" elapsed="0.003403">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:31.717697" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:31.714444" elapsed="0.003364">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:33.724765" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:33.721560" elapsed="0.003300">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:35.731802" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:35.728566" elapsed="0.003331">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:37.739147" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:37.735912" elapsed="0.003330">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:39.746388" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:39.743225" elapsed="0.003256">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:41.753399" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:41.750242" elapsed="0.003253">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-10-07T00:52:43.757407" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-10-07T00:52:43.755611" elapsed="0.001870">Variable '${flow_count_after_add}' not found.</status>
</kw>
<msg time="2026-10-07T00:52:43.757633" 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-10-07T00:46:02.352492" elapsed="401.405385">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-10-07T00:52:43.758215" elapsed="0.000038"/>
</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-10-07T00:52:43.758486" elapsed="0.000032"/>
</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-10-07T00:52:43.758802" elapsed="0.000032"/>
</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-10-07T00:52:43.759087" elapsed="0.000028"/>
</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-10-07T00:52:43.759322" elapsed="0.000030"/>
</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-10-07T00:52:43.759593" elapsed="0.000033"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${oper_datastore_write_time}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:52:43.760054" elapsed="0.000032"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${oper_datastore_write_rate}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:52:43.760344" elapsed="0.000030"/>
</kw>
<doc>Check Flows in Operational Datastore</doc>
<status status="FAIL" start="2026-10-07T00:46:02.351881" elapsed="401.408701">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-10-07T00:52:43.765561" 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-10-07T00:52:43.763720" elapsed="0.001895">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-10-07T00:52:43.765913" elapsed="0.000033"/>
</kw>
<doc>Stop mininet and exit connection.</doc>
<status status="FAIL" start="2026-10-07T00:52:43.760913" elapsed="0.005255">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-10-07T00:52:43.767549" level="INFO">${config_datastore_delete_start_time} = 2026-10-07 00:52:43.767</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-10-07T00:52:43.767154" elapsed="0.000435"/>
</kw>
<kw name="Delete Bulk Flow In Node" owner="BulkomaticKeywords">
<msg time="2026-10-07T00:52:43.771982" 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-10-07T00:52:43.769759" elapsed="0.002295">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-10-07T00:52:43.772338" elapsed="0.000034"/>
</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-10-07T00:52:43.772629" elapsed="0.000047"/>
</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-10-07T00:52:43.772948" elapsed="0.000094"/>
</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-10-07T00:52:43.773290" elapsed="0.000033"/>
</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-10-07T00:52:43.773556" elapsed="0.000031"/>
</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-10-07T00:52:43.773829" elapsed="0.000030"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_delete_time}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:52:43.774134" elapsed="0.000032"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_delete_rate}</arg>
<doc>Makes the variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-10-07T00:52:43.774394" elapsed="0.000026"/>
</kw>
<doc>100K Flows deleted via Follower Node2 and verify it gets applied in all instances.</doc>
<status status="FAIL" start="2026-10-07T00:52:43.766421" elapsed="0.008147">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-10-07T00:52:43.775795" level="INFO" html="true">Appended to file '&lt;a href="file:///w/workspace/openflowplugin-csit-3node-clustering-perf-bulkomatic-only-vanadium/rate.csv"&gt;/w/workspace/openflowplugin-csit-3node-clustering-perf-bulkomatic-only-vanadium/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-10-07T00:52:43.775287" elapsed="0.000586"/>
</kw>
<kw name="Append To File" owner="OperatingSystem">
<msg time="2026-10-07T00:52:43.777881" 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-10-07T00:52:43.776106" elapsed="0.001825">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-10-07T00:52:43.778180" elapsed="0.000031"/>
</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-10-07T00:52:43.778414" elapsed="0.000029"/>
</kw>
<doc>Log results for plotting.</doc>
<status status="FAIL" start="2026-10-07T00:52:43.774801" elapsed="0.003796">Variable '${config_datastore_write_rate}' not found.</status>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-10-07T00:52:43.779503" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects </doc>
<status status="PASS" start="2026-10-07T00:52:43.779392" elapsed="0.000183"/>
</kw>
<doc>Test suite for 3Node Cluster - 100K flows and 10 DPNs in Cluster Scale Up scenario</doc>
<status status="FAIL" start="2026-10-07T00:45:51.469016" elapsed="412.310599"/>
</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>
