<?xml version="1.0" encoding="UTF-8"?>
<robot generator="Robot 7.4.2 (Python 3.11.10 on linux)" generated="2026-04-17T03:05:44.691427" 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-04-17T03:05:45.446067" 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-04-17T03:05:45.442261" elapsed="0.003849"/>
</kw>
<if>
<branch type="IF" condition="${already_done}">
<return>
<status status="NOT RUN" start="2026-04-17T03:05:45.446364" elapsed="0.000019"/>
</return>
<status status="NOT RUN" start="2026-04-17T03:05:45.446227" elapsed="0.000189"/>
</branch>
<status status="PASS" start="2026-04-17T03:05:45.446198" elapsed="0.000287"/>
</if>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.447045" level="INFO">${ClusterManagement__has_setup_run} = True</msg>
<arg>\${ClusterManagement__has_setup_run}</arg>
<arg>True</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-04-17T03:05:45.446689" elapsed="0.000406"/>
</kw>
<kw name="Get Variable Value" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.447614" 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-04-17T03:05:45.447273" elapsed="0.000372"/>
</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-04-17T03:05:45.448245" elapsed="0.000307"/>
</kw>
<msg time="2026-04-17T03:05:45.448679" level="INFO">${status} = PASS</msg>
<msg time="2026-04-17T03:05:45.448733" level="INFO">${possibly_int_of_members} = 0</msg>
<var>${status}</var>
<var>${possibly_int_of_members}</var>
<arg>BuiltIn.Convert_To_Integer</arg>
<arg>${cluster_size}</arg>
<doc>Runs the given keyword with the given arguments and ignores possible error.</doc>
<status status="PASS" start="2026-04-17T03:05:45.447838" elapsed="0.000921"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.449348" 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-04-17T03:05:45.448940" elapsed="0.000436"/>
</kw>
<kw name="ClusterManagement__Compute_Derived_Variables" owner="ClusterManagement">
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.450537" level="INFO">@{member_index_list} = [ ]</msg>
<var>@{member_index_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:45.450199" elapsed="0.000368"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.451023" level="INFO">@{session_list} = [ ]</msg>
<var>@{session_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:45.450741" elapsed="0.000311"/>
</kw>
<kw name="Create Dictionary" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.451591" 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-04-17T03:05:45.451222" elapsed="0.000399"/>
</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-04-17T03:05:45.454240" elapsed="0.000027"/>
</kw>
<var name="${index}"/>
<status status="NOT RUN" start="2026-04-17T03:05:45.454048" elapsed="0.000269"/>
</iter>
<var>${index}</var>
<value>1</value>
<value>${int_of_members+1}</value>
<status status="NOT RUN" start="2026-04-17T03:05:45.451698" elapsed="0.002648"/>
</for>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.454988" level="INFO">${ClusterManagement__member_index_list} = []</msg>
<arg>\${ClusterManagement__member_index_list}</arg>
<arg>${member_index_list}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-04-17T03:05:45.454588" elapsed="0.000446"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.455560" level="INFO">${ClusterManagement__index_to_ip_mapping} = {}</msg>
<arg>\${ClusterManagement__index_to_ip_mapping}</arg>
<arg>${index_to_ip_mapping}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-04-17T03:05:45.455200" elapsed="0.000403"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.456140" level="INFO">${ClusterManagement__session_list} = []</msg>
<arg>\${ClusterManagement__session_list}</arg>
<arg>${session_list}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="PASS" start="2026-04-17T03:05:45.455780" elapsed="0.000404"/>
</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-04-17T03:05:45.449666" elapsed="0.006583"/>
</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-04-17T03:05:45.441584" elapsed="0.014725"/>
</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-04-17T03:05:45.478415" elapsed="0.000369"/>
</kw>
<msg time="2026-04-17T03:05:45.478862" level="INFO">Returning from the enclosing user keyword.</msg>
<arg>${Stream_dict}[${ODL_STREAM}] &gt;= ${Stream_dict}[${lower_bound}]</arg>
<arg>${kw_name}</arg>
<arg>@{varargs}</arg>
<arg>&amp;{kwargs}</arg>
<doc>Runs the specified keyword and returns from the enclosing user keyword.</doc>
<status status="PASS" start="2026-04-17T03:05:45.477498" elapsed="0.001442"/>
</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-04-17T03:05:45.476988" elapsed="0.002039"/>
</kw>
<msg time="2026-04-17T03:05:45.479078" 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-04-17T03:05:45.468246" elapsed="0.010970"/>
</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-04-17T03:05:45.467831" elapsed="0.011467"/>
</kw>
<kw name="Log" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.480285" 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-04-17T03:05:45.480011" elapsed="0.000323"/>
</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-04-17T03:05:45.485873" 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-04-17T03:05:45.485428" elapsed="0.000473"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.486356" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:45.486061" elapsed="0.000321"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-04-17T03:05:45.486433" elapsed="0.000060"/>
</return>
<msg time="2026-04-17T03:05:45.486648" 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-04-17T03:05:45.485022" elapsed="0.001667"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-04-17T03:05:45.486843" elapsed="0.000169"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.487529" 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-04-17T03:05:45.487170" elapsed="0.000390"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.487974" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:45.487732" elapsed="0.000268"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.488552" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:45.488144" elapsed="0.000436"/>
</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-04-17T03:05:45.489024" elapsed="0.000026"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:45.489290" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:45.489141" elapsed="0.000205"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:45.489524" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:45.489371" elapsed="0.000215"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:45.489769" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:45.489611" elapsed="0.000211"/>
</branch>
<status status="NOT RUN" start="2026-04-17T03:05:45.489120" elapsed="0.000726"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-04-17T03:05:45.488854" elapsed="0.001016"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:45.488633" elapsed="0.001264"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-04-17T03:05:45.489938" elapsed="0.000033"/>
</return>
<msg time="2026-04-17T03:05:45.490152" level="INFO">${leader_list} = []</msg>
<msg time="2026-04-17T03:05:45.490200" 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-04-17T03:05:45.484259" elapsed="0.005965"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.490896" level="INFO">Length is 0.</msg>
<msg time="2026-04-17T03:05:45.490976" 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-04-17T03:05:45.490391" elapsed="0.000610"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.491632" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-04-17T03:05:45.491294" elapsed="0.000445">No leader found.</status>
</kw>
<status status="FAIL" start="2026-04-17T03:05:45.491075" elapsed="0.000739">No leader found.</status>
</branch>
<status status="FAIL" start="2026-04-17T03:05:45.491055" elapsed="0.000791">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-04-17T03:05:45.492017" elapsed="0.000023"/>
</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-04-17T03:05:45.492188" elapsed="0.000020"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:45.492319" elapsed="0.000018"/>
</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-04-17T03:05:45.481504" elapsed="0.010941">No leader found.</status>
</kw>
<var name="${shard_name}">inventory</var>
<status status="FAIL" start="2026-04-17T03:05:45.481215" elapsed="0.011313">No leader found.</status>
</iter>
<var>${shard_name}</var>
<value>@{shard_name_list}</value>
<status status="FAIL" start="2026-04-17T03:05:45.481064" elapsed="0.011531">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-04-17T03:05:45.480591" elapsed="0.012118">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-04-17T03:05:45.492952" elapsed="0.000026"/>
</kw>
<doc>Check Status for all shards in OpenFlow application.</doc>
<status status="FAIL" start="2026-04-17T03:05:45.457055" elapsed="0.036019">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-04-17T03:05:45.493277" 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-04-17T03:05:45.493454" elapsed="0.000023"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${flow_count_after_add}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:45.493644" elapsed="0.000037"/>
</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-04-17T03:05:45.493940" elapsed="0.000025"/>
</kw>
<kw name="Set DPN And Flow Count In Json Get" owner="BulkomaticKeywords">
<var>${temp_json_config_get}</var>
<arg>${orig_json_config_get}</arg>
<arg>${switch_count}</arg>
<arg>${flow_count_after_add}</arg>
<doc>Set new DPN count and flows count per DPN in the Bulkomatic Get json file.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:45.494207" elapsed="0.000023"/>
</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-04-17T03:05:45.494514" elapsed="0.000032"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${temp_json_config_add}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:45.494732" elapsed="0.000022"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${temp_json_config_get}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:45.494903" elapsed="0.000020"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${temp_json_config_del}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:45.495067" 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-04-17T03:05:45.456378" elapsed="0.038864">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-04-17T03:05:45.503019" 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-04-17T03:05:45.502603" elapsed="0.000445"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.503491" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:45.503205" elapsed="0.000312"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-04-17T03:05:45.503563" elapsed="0.000036"/>
</return>
<msg time="2026-04-17T03:05:45.503744" 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-04-17T03:05:45.502206" elapsed="0.001564"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-04-17T03:05:45.503917" elapsed="0.000163"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.504568" 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-04-17T03:05:45.504233" elapsed="0.000361"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.504997" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:45.504762" elapsed="0.000261"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.505396" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:45.505163" elapsed="0.000259"/>
</kw>
<for flavor="IN">
<iter>
<kw name="Get_Raft_State_Of_Shard_At_Member" owner="ClusterManagement">
<var>${raft_state}</var>
<arg>shard_name=${shard_name}</arg>
<arg>shard_type=${ds_type}</arg>
<arg>member_index=${index}</arg>
<arg>verify_restconf=${verify_restconf}</arg>
<arg>http_timeout=${http_timeout}</arg>
<doc>Send request to Jolokia on indexed member, return extracted Raft status.
Optionally, check restconf works.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:45.505920" elapsed="0.000025"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:45.506175" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:45.506031" elapsed="0.000200"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:45.506394" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:45.506256" elapsed="0.000192"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:45.506682" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:45.506473" elapsed="0.000264"/>
</branch>
<status status="NOT RUN" start="2026-04-17T03:05:45.506012" elapsed="0.000750"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-04-17T03:05:45.505755" elapsed="0.001031"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:45.505473" elapsed="0.001341"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-04-17T03:05:45.506854" elapsed="0.000030"/>
</return>
<msg time="2026-04-17T03:05:45.507065" level="INFO">${leader_list} = []</msg>
<msg time="2026-04-17T03:05:45.507112" 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-04-17T03:05:45.501482" elapsed="0.005654"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.507571" level="INFO">Length is 0.</msg>
<msg time="2026-04-17T03:05:45.507648" 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-04-17T03:05:45.507299" elapsed="0.000389"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-04-17T03:05:45.508263" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-04-17T03:05:45.507979" elapsed="0.000360">No leader found.</status>
</kw>
<status status="FAIL" start="2026-04-17T03:05:45.507759" elapsed="0.000646">No leader found.</status>
</branch>
<status status="FAIL" start="2026-04-17T03:05:45.507741" elapsed="0.000696">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-04-17T03:05:45.508584" 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-04-17T03:05:45.508767" elapsed="0.000021"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:45.508834" elapsed="0.000016"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-04-17T03:05:45.499086" elapsed="0.009854">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-04-17T03:05:46.519110" 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-04-17T03:05:46.518429" elapsed="0.000727"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:46.519910" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:46.519397" elapsed="0.000559"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-04-17T03:05:46.520041" elapsed="0.000062"/>
</return>
<msg time="2026-04-17T03:05:46.520309" 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-04-17T03:05:46.517809" elapsed="0.002541"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-04-17T03:05:46.520571" elapsed="0.000270"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-04-17T03:05:46.521620" 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-04-17T03:05:46.521082" elapsed="0.000602"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:46.522427" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:46.522042" elapsed="0.000425"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:46.523114" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:46.522736" elapsed="0.000418"/>
</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-04-17T03:05:46.523858" elapsed="0.000039"/>
</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-04-17T03:05:46.524317" elapsed="0.000032"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:46.524105" elapsed="0.000296"/>
</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-04-17T03:05:46.524679" elapsed="0.000031"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:46.524436" elapsed="0.000321"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:46.524926" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:46.524782" elapsed="0.000196"/>
</branch>
<status status="NOT RUN" start="2026-04-17T03:05:46.524077" elapsed="0.000924"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-04-17T03:05:46.523530" elapsed="0.001498"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:46.523233" elapsed="0.001822"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-04-17T03:05:46.525096" elapsed="0.000033"/>
</return>
<msg time="2026-04-17T03:05:46.525311" level="INFO">${leader_list} = []</msg>
<msg time="2026-04-17T03:05:46.525358" 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-04-17T03:05:46.516613" elapsed="0.008769"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-04-17T03:05:46.525916" level="INFO">Length is 0.</msg>
<msg time="2026-04-17T03:05:46.526032" 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-04-17T03:05:46.525565" elapsed="0.000494"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-04-17T03:05:46.526720" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-04-17T03:05:46.526394" elapsed="0.000408">No leader found.</status>
</kw>
<status status="FAIL" start="2026-04-17T03:05:46.526134" elapsed="0.000735">No leader found.</status>
</branch>
<status status="FAIL" start="2026-04-17T03:05:46.526115" elapsed="0.000785">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-04-17T03:05:46.527079" elapsed="0.000026"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:46.527259" elapsed="0.000021"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:46.527327" elapsed="0.000016"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-04-17T03:05:46.510067" elapsed="0.017368">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-04-17T03:05:47.533493" 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-04-17T03:05:47.533021" elapsed="0.000505"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:47.534192" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:47.533778" elapsed="0.000450"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-04-17T03:05:47.534297" elapsed="0.000052"/>
</return>
<msg time="2026-04-17T03:05:47.534531" 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-04-17T03:05:47.532574" elapsed="0.002000"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-04-17T03:05:47.534833" elapsed="0.000242"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-04-17T03:05:47.535838" 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-04-17T03:05:47.535295" elapsed="0.000583"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:47.536434" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:47.536095" elapsed="0.000374"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:47.537328" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:47.536767" elapsed="0.000597"/>
</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-04-17T03:05:47.537884" elapsed="0.000025"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:47.538231" elapsed="0.000024"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:47.538065" elapsed="0.000229"/>
</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-04-17T03:05:47.538457" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:47.538319" elapsed="0.000193"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:47.538705" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:47.538536" elapsed="0.000225"/>
</branch>
<status status="NOT RUN" start="2026-04-17T03:05:47.538043" elapsed="0.000741"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-04-17T03:05:47.537716" elapsed="0.001094"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:47.537440" elapsed="0.001399"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-04-17T03:05:47.538881" elapsed="0.000173"/>
</return>
<msg time="2026-04-17T03:05:47.539235" level="INFO">${leader_list} = []</msg>
<msg time="2026-04-17T03:05:47.539298" 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-04-17T03:05:47.531832" elapsed="0.007493"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-04-17T03:05:47.539820" level="INFO">Length is 0.</msg>
<msg time="2026-04-17T03:05:47.539898" 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-04-17T03:05:47.539495" elapsed="0.000426"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-04-17T03:05:47.540520" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-04-17T03:05:47.540203" elapsed="0.000440">No leader found.</status>
</kw>
<status status="FAIL" start="2026-04-17T03:05:47.539991" elapsed="0.000744">No leader found.</status>
</branch>
<status status="FAIL" start="2026-04-17T03:05:47.539973" elapsed="0.000794">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-04-17T03:05:47.540918" 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-04-17T03:05:47.541085" elapsed="0.000020"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:47.541151" elapsed="0.000015"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-04-17T03:05:47.528223" elapsed="0.013033">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-04-17T03:05:48.547878" 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-04-17T03:05:48.547395" elapsed="0.000517"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:48.548383" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:48.548079" elapsed="0.000331"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-04-17T03:05:48.548460" elapsed="0.000042"/>
</return>
<msg time="2026-04-17T03:05:48.548634" 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-04-17T03:05:48.547000" elapsed="0.001675"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-04-17T03:05:48.548827" elapsed="0.000174"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-04-17T03:05:48.549504" 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-04-17T03:05:48.549159" elapsed="0.000372"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:48.549998" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:48.549748" elapsed="0.000276"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:48.550424" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:48.550169" elapsed="0.000281"/>
</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-04-17T03:05:48.550911" elapsed="0.000027"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:48.551166" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:48.551023" elapsed="0.000267"/>
</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-04-17T03:05:48.551460" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:48.551317" elapsed="0.000200"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:48.551694" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:48.551540" elapsed="0.000208"/>
</branch>
<status status="NOT RUN" start="2026-04-17T03:05:48.551003" elapsed="0.000769"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-04-17T03:05:48.550726" elapsed="0.001070"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:48.550507" elapsed="0.001316"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-04-17T03:05:48.551865" elapsed="0.000031"/>
</return>
<msg time="2026-04-17T03:05:48.552080" level="INFO">${leader_list} = []</msg>
<msg time="2026-04-17T03:05:48.552127" 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-04-17T03:05:48.546241" elapsed="0.005909"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-04-17T03:05:48.552610" level="INFO">Length is 0.</msg>
<msg time="2026-04-17T03:05:48.552711" 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-04-17T03:05:48.552318" elapsed="0.000418"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-04-17T03:05:48.553320" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-04-17T03:05:48.553024" elapsed="0.000375">No leader found.</status>
</kw>
<status status="FAIL" start="2026-04-17T03:05:48.552807" elapsed="0.000658">No leader found.</status>
</branch>
<status status="FAIL" start="2026-04-17T03:05:48.552789" elapsed="0.000708">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-04-17T03:05:48.553720" elapsed="0.000024"/>
</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-04-17T03:05:48.553894" elapsed="0.000020"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:48.553960" elapsed="0.000016"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-04-17T03:05:48.542607" elapsed="0.011460">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-04-17T03:05:49.561363" 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-04-17T03:05:49.560707" elapsed="0.000708"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:49.562144" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:49.561714" elapsed="0.000468"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-04-17T03:05:49.562251" elapsed="0.000078"/>
</return>
<msg time="2026-04-17T03:05:49.562644" 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-04-17T03:05:49.560127" elapsed="0.002594"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-04-17T03:05:49.562945" elapsed="0.000241"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-04-17T03:05:49.563989" 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-04-17T03:05:49.563429" elapsed="0.000600"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:49.564628" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:49.564247" elapsed="0.000443"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:49.565325" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:49.564941" elapsed="0.000428"/>
</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-04-17T03:05:49.566085" elapsed="0.000037"/>
</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-04-17T03:05:49.566467" elapsed="0.000094"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:49.566242" elapsed="0.000374"/>
</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-04-17T03:05:49.566868" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:49.566650" elapsed="0.000391"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:49.567314" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:49.567106" elapsed="0.000282"/>
</branch>
<status status="NOT RUN" start="2026-04-17T03:05:49.566215" elapsed="0.001204"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-04-17T03:05:49.565811" elapsed="0.001639"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:49.565455" elapsed="0.002033"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-04-17T03:05:49.567545" elapsed="0.000043"/>
</return>
<msg time="2026-04-17T03:05:49.567825" level="INFO">${leader_list} = []</msg>
<msg time="2026-04-17T03:05:49.567873" 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-04-17T03:05:49.559084" elapsed="0.008812"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-04-17T03:05:49.568385" level="INFO">Length is 0.</msg>
<msg time="2026-04-17T03:05:49.568463" 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-04-17T03:05:49.568060" elapsed="0.000426"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-04-17T03:05:49.569081" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-04-17T03:05:49.568788" elapsed="0.000375">No leader found.</status>
</kw>
<status status="FAIL" start="2026-04-17T03:05:49.568555" elapsed="0.000677">No leader found.</status>
</branch>
<status status="FAIL" start="2026-04-17T03:05:49.568538" elapsed="0.000738">No leader found.</status>
</if>
<kw name="Length Should Be" owner="BuiltIn">
<arg>${leader_list}</arg>
<arg>${1}</arg>
<arg>Too many Leaders.</arg>
<doc>Verifies that the length of the given item is correct.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:49.569434" elapsed="0.000023"/>
</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-04-17T03:05:49.569626" elapsed="0.000022"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:49.569722" elapsed="0.000016"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-04-17T03:05:49.555020" elapsed="0.014813">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-04-17T03:05:50.578854" 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-04-17T03:05:50.578224" elapsed="0.000674"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:50.579549" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:50.579124" elapsed="0.000461"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-04-17T03:05:50.579652" elapsed="0.000071"/>
</return>
<msg time="2026-04-17T03:05:50.579914" 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-04-17T03:05:50.577701" elapsed="0.002247"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-04-17T03:05:50.580156" elapsed="0.000231"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-04-17T03:05:50.581093" 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-04-17T03:05:50.580602" elapsed="0.000528"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:50.581688" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:50.581339" elapsed="0.000387"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:50.582251" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:50.581922" elapsed="0.000365"/>
</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-04-17T03:05:50.582876" elapsed="0.000034"/>
</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-04-17T03:05:50.583217" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:50.583025" elapsed="0.000268"/>
</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-04-17T03:05:50.583584" elapsed="0.000028"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:50.583327" elapsed="0.000351"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:50.583909" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:50.583712" elapsed="0.000249"/>
</branch>
<status status="NOT RUN" start="2026-04-17T03:05:50.583000" elapsed="0.000983"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-04-17T03:05:50.582629" elapsed="0.001379"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:50.582355" elapsed="0.001678"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-04-17T03:05:50.584071" elapsed="0.000027"/>
</return>
<msg time="2026-04-17T03:05:50.584275" level="INFO">${leader_list} = []</msg>
<msg time="2026-04-17T03:05:50.584320" 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-04-17T03:05:50.576680" elapsed="0.007662"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-04-17T03:05:50.584803" level="INFO">Length is 0.</msg>
<msg time="2026-04-17T03:05:50.584880" 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-04-17T03:05:50.584504" elapsed="0.000399"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-04-17T03:05:50.585508" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-04-17T03:05:50.585181" elapsed="0.000409">No leader found.</status>
</kw>
<status status="FAIL" start="2026-04-17T03:05:50.584972" elapsed="0.000704">No leader found.</status>
</branch>
<status status="FAIL" start="2026-04-17T03:05:50.584954" elapsed="0.000756">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-04-17T03:05:50.585858" elapsed="0.000022"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:50.586025" elapsed="0.000020"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:50.586092" elapsed="0.000016"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-04-17T03:05:50.570977" elapsed="0.015221">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-04-17T03:05:51.597815" 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-04-17T03:05:51.597326" elapsed="0.000524"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:51.598313" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:51.598018" elapsed="0.000321"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-04-17T03:05:51.598390" elapsed="0.000041"/>
</return>
<msg time="2026-04-17T03:05:51.598561" 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-04-17T03:05:51.596931" elapsed="0.001655"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-04-17T03:05:51.598756" elapsed="0.000168"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-04-17T03:05:51.599419" 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-04-17T03:05:51.599079" elapsed="0.000367"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:51.599857" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:51.599597" elapsed="0.000286"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:51.600290" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:51.600027" elapsed="0.000289"/>
</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-04-17T03:05:51.600790" elapsed="0.000025"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:51.601046" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:51.600903" elapsed="0.000200"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:51.601288" elapsed="0.000022"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:51.601132" elapsed="0.000212"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:51.601509" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:51.601367" elapsed="0.000271"/>
</branch>
<status status="NOT RUN" start="2026-04-17T03:05:51.600884" elapsed="0.000795"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-04-17T03:05:51.600576" elapsed="0.001129"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:51.600370" elapsed="0.001360"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-04-17T03:05:51.601773" elapsed="0.000035"/>
</return>
<msg time="2026-04-17T03:05:51.601987" level="INFO">${leader_list} = []</msg>
<msg time="2026-04-17T03:05:51.602033" 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-04-17T03:05:51.595369" elapsed="0.006687"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-04-17T03:05:51.602534" level="INFO">Length is 0.</msg>
<msg time="2026-04-17T03:05:51.602612" 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-04-17T03:05:51.602242" elapsed="0.000395"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-04-17T03:05:51.603338" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-04-17T03:05:51.603042" elapsed="0.000384">No leader found.</status>
</kw>
<status status="FAIL" start="2026-04-17T03:05:51.602777" elapsed="0.000717">No leader found.</status>
</branch>
<status status="FAIL" start="2026-04-17T03:05:51.602753" elapsed="0.000773">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-04-17T03:05:51.603692" 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-04-17T03:05:51.603860" elapsed="0.000021"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:51.603927" elapsed="0.000016"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-04-17T03:05:51.587216" elapsed="0.016819">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-04-17T03:05:52.612318" 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-04-17T03:05:52.611555" elapsed="0.000818"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:52.613184" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:52.612684" elapsed="0.000550"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-04-17T03:05:52.613307" elapsed="0.000056"/>
</return>
<msg time="2026-04-17T03:05:52.613548" 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-04-17T03:05:52.610997" elapsed="0.002619"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-04-17T03:05:52.613892" elapsed="0.000218"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-04-17T03:05:52.614730" 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-04-17T03:05:52.614314" elapsed="0.000449"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:52.615173" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:52.614929" elapsed="0.000270"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:52.615618" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:52.615341" elapsed="0.000308"/>
</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-04-17T03:05:52.616184" elapsed="0.000032"/>
</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-04-17T03:05:52.616471" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:52.616322" elapsed="0.000207"/>
</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-04-17T03:05:52.616741" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:52.616556" elapsed="0.000254"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:52.617018" elapsed="0.000029"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:52.616834" elapsed="0.000254"/>
</branch>
<status status="NOT RUN" start="2026-04-17T03:05:52.616300" elapsed="0.000816"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-04-17T03:05:52.615976" elapsed="0.001170"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:52.615736" elapsed="0.001522"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-04-17T03:05:52.617316" elapsed="0.000038"/>
</return>
<msg time="2026-04-17T03:05:52.617570" level="INFO">${leader_list} = []</msg>
<msg time="2026-04-17T03:05:52.617635" 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-04-17T03:05:52.609761" elapsed="0.007923"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-04-17T03:05:52.618208" level="INFO">Length is 0.</msg>
<msg time="2026-04-17T03:05:52.618294" 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-04-17T03:05:52.617879" elapsed="0.000444"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-04-17T03:05:52.619059" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-04-17T03:05:52.618702" elapsed="0.000448">No leader found.</status>
</kw>
<status status="FAIL" start="2026-04-17T03:05:52.618414" elapsed="0.000822">No leader found.</status>
</branch>
<status status="FAIL" start="2026-04-17T03:05:52.618391" elapsed="0.000884">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-04-17T03:05:52.619466" elapsed="0.000029"/>
</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-04-17T03:05:52.619708" elapsed="0.000027"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:52.619791" elapsed="0.000016"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-04-17T03:05:52.604849" elapsed="0.015051">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-04-17T03:05:53.627057" 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-04-17T03:05:53.626416" elapsed="0.000686"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:53.627739" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:53.627329" elapsed="0.000446"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-04-17T03:05:53.627843" elapsed="0.000054"/>
</return>
<msg time="2026-04-17T03:05:53.628069" 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-04-17T03:05:53.625871" elapsed="0.002231"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-04-17T03:05:53.628310" elapsed="0.000216"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-04-17T03:05:53.629170" 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-04-17T03:05:53.628740" elapsed="0.000465"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:53.629786" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:53.629407" elapsed="0.000416"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:53.630349" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:53.630028" elapsed="0.000355"/>
</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-04-17T03:05:53.630992" elapsed="0.000033"/>
</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-04-17T03:05:53.631328" elapsed="0.000030"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:53.631135" elapsed="0.000272"/>
</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-04-17T03:05:53.631648" elapsed="0.000051"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:53.631446" elapsed="0.000302"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:53.631976" elapsed="0.000027"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:53.631784" elapsed="0.000258"/>
</branch>
<status status="NOT RUN" start="2026-04-17T03:05:53.631109" elapsed="0.000963"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-04-17T03:05:53.630766" elapsed="0.001336"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:53.630451" elapsed="0.001688"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-04-17T03:05:53.632193" elapsed="0.000051"/>
</return>
<msg time="2026-04-17T03:05:53.632559" level="INFO">${leader_list} = []</msg>
<msg time="2026-04-17T03:05:53.632626" 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-04-17T03:05:53.624816" elapsed="0.007864"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-04-17T03:05:53.633323" level="INFO">Length is 0.</msg>
<msg time="2026-04-17T03:05:53.633430" 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-04-17T03:05:53.632927" elapsed="0.000536"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-04-17T03:05:53.634248" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-04-17T03:05:53.633905" elapsed="0.000419">No leader found.</status>
</kw>
<status status="FAIL" start="2026-04-17T03:05:53.633559" elapsed="0.000832">No leader found.</status>
</branch>
<status status="FAIL" start="2026-04-17T03:05:53.633534" elapsed="0.000889">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-04-17T03:05:53.634573" elapsed="0.000022"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:53.634791" elapsed="0.000023"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:53.634862" elapsed="0.000016"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-04-17T03:05:53.620755" elapsed="0.014213">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-04-17T03:05:54.643468" 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-04-17T03:05:54.642826" elapsed="0.000690"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:54.644206" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:54.643775" elapsed="0.000471"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-04-17T03:05:54.644316" elapsed="0.000053"/>
</return>
<msg time="2026-04-17T03:05:54.644558" 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-04-17T03:05:54.642223" elapsed="0.002372"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-04-17T03:05:54.644835" elapsed="0.000256"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-04-17T03:05:54.645839" 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-04-17T03:05:54.645318" elapsed="0.000562"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:54.646515" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:54.646108" elapsed="0.000446"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:54.647033" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:54.646787" elapsed="0.000272"/>
</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-04-17T03:05:54.647620" elapsed="0.000026"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:54.647890" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:54.647747" elapsed="0.000199"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:54.648106" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:54.647971" elapsed="0.000189"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:54.648319" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:54.648183" elapsed="0.000188"/>
</branch>
<status status="NOT RUN" start="2026-04-17T03:05:54.647728" elapsed="0.000666"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-04-17T03:05:54.647450" elapsed="0.000967"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:54.647110" elapsed="0.001332"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-04-17T03:05:54.648481" elapsed="0.000030"/>
</return>
<msg time="2026-04-17T03:05:54.648703" level="INFO">${leader_list} = []</msg>
<msg time="2026-04-17T03:05:54.648750" 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-04-17T03:05:54.641129" elapsed="0.007645"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-04-17T03:05:54.649293" level="INFO">Length is 0.</msg>
<msg time="2026-04-17T03:05:54.649370" 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-04-17T03:05:54.649012" elapsed="0.000382"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-04-17T03:05:54.649985" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-04-17T03:05:54.649695" elapsed="0.000361">No leader found.</status>
</kw>
<status status="FAIL" start="2026-04-17T03:05:54.649464" elapsed="0.000658">No leader found.</status>
</branch>
<status status="FAIL" start="2026-04-17T03:05:54.649446" elapsed="0.000707">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-04-17T03:05:54.650299" elapsed="0.000022"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${leader}</var>
<arg>${leader_list}</arg>
<arg>0</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:54.650494" elapsed="0.000022"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:54.650562" elapsed="0.000016"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-04-17T03:05:54.636168" elapsed="0.014516">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-04-17T03:05:55.660699" 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-04-17T03:05:55.660218" elapsed="0.000517"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:55.661201" level="INFO">${return_list_copy} = []</msg>
<var>${return_list_copy}</var>
<arg>@{return_list_reference}</arg>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:55.660902" elapsed="0.000326"/>
</kw>
<return>
<value>${return_list_copy}</value>
<status status="PASS" start="2026-04-17T03:05:55.661278" elapsed="0.000041"/>
</return>
<msg time="2026-04-17T03:05:55.661451" 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-04-17T03:05:55.659815" elapsed="0.001660"/>
</kw>
<kw name="Sort List" owner="Collections">
<arg>${index_list}</arg>
<doc>Sorts the given list in place.</doc>
<status status="PASS" start="2026-04-17T03:05:55.661626" elapsed="0.000184"/>
</kw>
<kw name="Set Variable If" owner="BuiltIn">
<msg time="2026-04-17T03:05:55.662320" 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-04-17T03:05:55.661974" elapsed="0.000373"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:55.662764" level="INFO">${leader_list} = []</msg>
<var>${leader_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:55.662502" elapsed="0.000289"/>
</kw>
<kw name="Create List" owner="BuiltIn">
<msg time="2026-04-17T03:05:55.663202" level="INFO">${follower_list} = []</msg>
<var>${follower_list}</var>
<doc>Returns a list containing given items.</doc>
<status status="PASS" start="2026-04-17T03:05:55.662936" elapsed="0.000293"/>
</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-04-17T03:05:55.663675" elapsed="0.000026"/>
</kw>
<if>
<branch type="IF" condition="'Follower' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${follower_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.663931" elapsed="0.000021"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:55.663789" elapsed="0.000198"/>
</branch>
<branch type="ELSE IF" condition="'Leader' == '${raft_state}'">
<kw name="Append To List" owner="Collections">
<arg>${leader_list}</arg>
<arg>${index}</arg>
<doc>Adds ``values`` to the end of ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.664146" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:55.664013" elapsed="0.000186"/>
</branch>
<branch type="ELSE IF" condition="${validate}">
<kw name="Fail" owner="BuiltIn">
<arg>Unrecognized Raft state: ${raft_state}</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.664355" elapsed="0.000020"/>
</kw>
<status status="NOT RUN" start="2026-04-17T03:05:55.664221" elapsed="0.000184"/>
</branch>
<status status="NOT RUN" start="2026-04-17T03:05:55.663769" elapsed="0.000659"/>
</if>
<var name="${index}"/>
<status status="NOT RUN" start="2026-04-17T03:05:55.663483" elapsed="0.000969"/>
</iter>
<var>${index}</var>
<value>@{index_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:55.663282" elapsed="0.001196"/>
</for>
<return>
<value>${leader_list}</value>
<value>${follower_list}</value>
<status status="PASS" start="2026-04-17T03:05:55.664517" elapsed="0.000034"/>
</return>
<msg time="2026-04-17T03:05:55.664748" level="INFO">${leader_list} = []</msg>
<msg time="2026-04-17T03:05:55.664795" 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-04-17T03:05:55.658013" elapsed="0.006805"/>
</kw>
<kw name="Get Length" owner="BuiltIn">
<msg time="2026-04-17T03:05:55.665361" level="INFO">Length is 0.</msg>
<msg time="2026-04-17T03:05:55.665439" 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-04-17T03:05:55.665070" elapsed="0.000396"/>
</kw>
<if>
<branch type="IF" condition="${leader_count} &lt; 1">
<kw name="Fail" owner="BuiltIn">
<msg time="2026-04-17T03:05:55.666179" level="FAIL">No leader found.</msg>
<arg>No leader found.</arg>
<doc>Fails the test with the given message and optionally alters its tags.</doc>
<status status="FAIL" start="2026-04-17T03:05:55.665884" elapsed="0.000370">No leader found.</status>
</kw>
<status status="FAIL" start="2026-04-17T03:05:55.665581" elapsed="0.000741">No leader found.</status>
</branch>
<status status="FAIL" start="2026-04-17T03:05:55.665551" elapsed="0.000802">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-04-17T03:05:55.666502" 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-04-17T03:05:55.666729" elapsed="0.000025"/>
</kw>
<return>
<value>${leader}</value>
<value>${follower_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:55.666803" elapsed="0.000016"/>
</return>
<arg>shard_name=inventory</arg>
<arg>shard_type=config</arg>
<arg>member_index_list=${controller_index_list}</arg>
<doc>Get role lists, validate there is one leader, return the leader and list of followers.
Optionally, issue GET to a simple restconf URL to make sure subsequent operations will not encounter 503.</doc>
<status status="FAIL" start="2026-04-17T03:05:55.651791" elapsed="0.015122">No leader found.</status>
</kw>
<msg time="2026-04-17T03:05:55.667010" 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-04-17T03:05:45.498343" elapsed="10.168806">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-04-17T03:05:55.667378" elapsed="0.000021"/>
</kw>
<return>
<value>${inv_conf_leader}</value>
<value>${inv_conf_followers_list}</value>
<status status="NOT RUN" start="2026-04-17T03:05:55.667440" elapsed="0.000015"/>
</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-04-17T03:05:45.496077" elapsed="10.171462">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-04-17T03:05:55.667731" elapsed="0.000022"/>
</kw>
<kw name="Get From List" owner="Collections">
<var>${Follower_Node_2}</var>
<arg>${Inventory_Followers}</arg>
<arg>1</arg>
<doc>Returns the value specified with an ``index`` from ``list``.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.667912" elapsed="0.000020"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>${\n}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.668074" elapsed="0.000019"/>
</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-04-17T03:05:55.668224" elapsed="0.000019"/>
</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-04-17T03:05:55.668374" elapsed="0.000019"/>
</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-04-17T03:05:55.668549" elapsed="0.000028"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Follower_Node_1}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.668758" elapsed="0.000021"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Follower_Node_2}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.668924" elapsed="0.000020"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Inventory_Leader}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.669086" elapsed="0.000021"/>
</kw>
<doc>Find a leader and followers in the inventory config shard</doc>
<status status="FAIL" start="2026-04-17T03:05:45.495486" elapsed="10.173779">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-04-17T03:05:55.674781" 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-04-17T03:05:55.670150" elapsed="0.004699">Variable '${Follower_Node_1}' not found.</status>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${mininet_conn_id}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.675146" elapsed="0.000031"/>
</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-04-17T03:05:55.675354" elapsed="0.000022"/>
</kw>
<doc>Start mininet with connection to follower node1.</doc>
<status status="FAIL" start="2026-04-17T03:05:55.669501" elapsed="0.006032">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-04-17T03:05:55.676727" level="INFO">${config_datastore_write_start_time} = 2026-04-17 03:05:55.677</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-04-17T03:05:55.676373" elapsed="0.000382"/>
</kw>
<kw name="Add Bulk Flow In Node" owner="BulkomaticKeywords">
<msg time="2026-04-17T03:05:55.685457" 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-04-17T03:05:55.681182" elapsed="0.004318">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-04-17T03:05:55.685697" elapsed="0.000024"/>
</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-04-17T03:05:55.685866" elapsed="0.000021"/>
</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-04-17T03:05:55.686034" elapsed="0.000019"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_write_start_time}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.686205" elapsed="0.000020"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>${\n}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.686360" elapsed="0.000020"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The config_datastore_write_time is ${config_datastore_write_time}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.686513" elapsed="0.000019"/>
</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-04-17T03:05:55.686680" elapsed="0.000020"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_write_time}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.686844" elapsed="0.000020"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_write_rate}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.687006" elapsed="0.000019"/>
</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-04-17T03:05:55.675782" elapsed="0.011457">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-04-17T03:05:55.688142" level="INFO">${Mininet_write_start_time} = 2026-04-17 03:05:55.688</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-04-17T03:05:55.687884" elapsed="0.000285"/>
</kw>
<kw name="Verify Aggregate Flow From Mininet Session" owner="MininetKeywords">
<msg time="2026-04-17T03:05:55.692622" 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-04-17T03:05:55.688372" elapsed="0.004306">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-04-17T03:05:55.692877" elapsed="0.000023"/>
</kw>
<kw name="Subtract Date From Date" owner="DateTime">
<var>${Mininet_write_time}</var>
<arg>${Mininet_write_end_time}</arg>
<arg>${config_datastore_write_start_time}</arg>
<doc>Subtracts date from another date and returns time between.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.693044" elapsed="0.000020"/>
</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-04-17T03:05:55.693353" elapsed="0.000020"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>${\n}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.693510" elapsed="0.000020"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The Mininet_write_time is ${Mininet_write_time}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.693679" elapsed="0.000020"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>The Mininet_write_rate is ${Mininet_write_rate}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.693833" elapsed="0.000020"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Mininet_write_time}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.693999" elapsed="0.000020"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${Mininet_write_rate}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:05:55.694161" elapsed="0.000020"/>
</kw>
<doc>Verify 100K flows are installed in 10 switches.</doc>
<status status="FAIL" start="2026-04-17T03:05:55.687451" elapsed="0.006865">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-04-17T03:05:55.705268" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:05:55.700875" elapsed="0.004441">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:05:57.719999" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:05:57.713270" elapsed="0.006825">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:05:59.735802" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:05:59.729945" elapsed="0.005928">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:01.747730" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:01.741995" elapsed="0.005801">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:03.764527" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:03.756548" elapsed="0.008055">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:05.778105" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:05.772205" elapsed="0.005970">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:07.792781" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:07.788499" elapsed="0.004338">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:09.807927" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:09.801820" elapsed="0.006170">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:11.823774" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:11.818311" elapsed="0.005542">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:13.837765" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:13.833473" elapsed="0.004347">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:15.849083" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:15.843624" elapsed="0.005534">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:17.863686" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:17.859469" elapsed="0.004281">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:19.877174" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:19.871110" elapsed="0.006126">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:21.889801" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:21.883410" elapsed="0.006471">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:23.902286" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:23.896063" elapsed="0.006294">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:25.916355" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:25.912065" elapsed="0.004369">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:27.929843" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:27.925609" elapsed="0.004288">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:29.943620" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:29.936592" elapsed="0.007130">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:31.958166" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:31.953874" elapsed="0.004349">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:33.971437" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:33.967251" elapsed="0.004241">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:35.987468" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:35.981238" elapsed="0.006409">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:38.002598" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:37.996172" elapsed="0.006538">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:40.017177" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:40.012827" elapsed="0.004405">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:42.030993" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:42.025090" elapsed="0.006055">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:44.047730" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:44.041719" elapsed="0.006085">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:46.063965" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:46.058016" elapsed="0.006025">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:48.080339" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:48.074230" elapsed="0.006176">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:50.096017" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:50.091212" elapsed="0.004864">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:52.115138" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:52.107939" elapsed="0.007286">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:54.129555" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:54.123636" elapsed="0.005992">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:56.147681" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:56.140627" elapsed="0.007131">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:06:58.164152" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:06:58.159061" elapsed="0.005193">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:00.178691" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:00.172609" elapsed="0.006168">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:02.197018" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:02.190707" elapsed="0.006388">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:04.210509" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:04.204094" elapsed="0.006493">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:06.224649" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:06.217355" elapsed="0.007390">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:08.238965" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:08.232602" elapsed="0.006436">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:10.253979" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:10.247972" elapsed="0.006164">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:12.267762" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:12.263446" elapsed="0.004372">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:14.284090" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:14.277904" elapsed="0.006241">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:16.295259" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:16.290262" elapsed="0.005055">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:18.310702" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:18.304728" elapsed="0.006051">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:20.326242" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:20.320090" elapsed="0.006230">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:22.342864" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:22.336773" elapsed="0.006147">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:24.357044" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:24.352470" elapsed="0.004640">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:26.372952" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:26.366984" elapsed="0.006042">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:28.387521" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:28.383118" elapsed="0.004462">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:30.402133" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:30.395721" elapsed="0.006488">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:32.416097" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:32.409715" elapsed="0.006478">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:34.431765" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:34.424633" elapsed="0.007194">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:36.446938" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:36.441734" elapsed="0.005254">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:38.463718" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:38.457144" elapsed="0.006642">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:40.477578" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:40.471601" elapsed="0.006034">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:42.493254" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:42.486931" elapsed="0.006396">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:44.509685" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:44.503148" elapsed="0.006631">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:46.521785" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:46.515955" elapsed="0.005905">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:48.537067" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:48.530644" elapsed="0.006536">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:50.552484" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:50.546439" elapsed="0.006115">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:52.565369" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:52.559687" elapsed="0.005808">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:54.580785" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:54.574636" elapsed="0.006204">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:56.595150" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:56.590831" elapsed="0.004378">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:07:58.609216" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:07:58.604938" elapsed="0.004337">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:00.624702" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:00.620119" elapsed="0.004654">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:02.640526" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:02.633144" elapsed="0.007442">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:04.655748" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:04.649386" elapsed="0.006443">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:06.671197" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:06.664599" elapsed="0.006669">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:08.688650" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:08.682214" elapsed="0.006530">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:10.701461" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:10.695499" elapsed="0.006037">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:12.714300" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:12.709767" elapsed="0.004590">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:14.727521" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:14.721142" elapsed="0.006437">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:16.743089" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:16.736702" elapsed="0.006464">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:18.758044" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:18.752321" elapsed="0.005781">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:20.773461" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:20.767970" elapsed="0.005555">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:22.788406" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:22.782341" elapsed="0.006141">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:24.804927" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:24.797108" elapsed="0.007889">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:26.819144" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:26.812882" elapsed="0.006337">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:28.833332" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:28.827549" elapsed="0.005839">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:30.847115" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:30.842861" elapsed="0.004311">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:32.860444" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:32.853798" elapsed="0.006729">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:34.874802" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:34.870297" elapsed="0.004565">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:36.887028" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:36.881099" elapsed="0.006037">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:38.899318" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:38.893553" elapsed="0.005837">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:40.914504" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:40.907356" elapsed="0.007220">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:42.931330" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:42.924430" elapsed="0.006963">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:44.947345" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:44.941037" elapsed="0.006371">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:46.962312" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:46.957284" elapsed="0.005104">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:48.973652" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:48.968992" elapsed="0.004735">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:50.988694" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:50.984376" elapsed="0.004372">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:53.005550" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:52.999300" elapsed="0.006331">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:55.021257" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:55.014681" elapsed="0.006661">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:57.034165" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:57.027752" elapsed="0.006515">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:08:59.047992" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:08:59.040667" elapsed="0.007413">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:01.065082" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:01.058184" elapsed="0.006980">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:03.081462" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:03.075038" elapsed="0.006485">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:05.098499" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:05.092086" elapsed="0.006471">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:07.113337" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:07.107068" elapsed="0.006344">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:09.128508" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:09.121880" elapsed="0.006716">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:11.143796" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:11.137764" elapsed="0.006090">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:13.155303" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:13.150681" elapsed="0.004680">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:15.169550" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:15.165270" elapsed="0.004337">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:17.185633" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:17.179693" elapsed="0.006034">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:19.197518" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:19.191864" elapsed="0.005722">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:21.211778" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:21.205922" elapsed="0.005928">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:23.226643" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:23.220712" elapsed="0.006017">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:25.240022" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:25.235442" elapsed="0.004633">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:27.252992" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:27.248742" elapsed="0.004304">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:29.268113" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:29.262861" elapsed="0.005359">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:31.285282" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:31.278634" elapsed="0.006728">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:33.298408" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:33.293486" elapsed="0.004976">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:35.312687" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:35.306997" elapsed="0.005747">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:37.326381" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:37.320436" elapsed="0.006016">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:39.342052" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:39.336099" elapsed="0.006023">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:41.356644" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:41.350062" elapsed="0.006679">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:43.373336" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:43.366501" elapsed="0.006908">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:45.383478" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:45.379232" elapsed="0.004311">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:47.396981" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:47.392035" elapsed="0.005020">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:49.411323" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:49.406884" elapsed="0.004523">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:51.427747" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:51.421280" elapsed="0.006537">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:53.442171" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:53.437856" elapsed="0.004380">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:55.456693" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:55.450811" elapsed="0.005940">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:57.466488" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:57.462297" elapsed="0.004245">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:09:59.482989" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:09:59.476130" elapsed="0.006939">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:01.498049" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:01.492125" elapsed="0.005984">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:03.513214" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:03.507823" elapsed="0.005446">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:05.529521" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:05.523898" elapsed="0.005706">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:07.544022" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:07.537908" elapsed="0.006188">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:09.558388" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:09.553877" elapsed="0.004565">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:11.573234" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:11.566952" elapsed="0.006355">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:13.586866" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:13.580989" elapsed="0.005947">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:15.600238" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:15.595949" elapsed="0.004342">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:17.612748" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:17.606513" elapsed="0.006304">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:19.629484" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:19.623602" elapsed="0.005945">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:21.644114" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:21.638167" elapsed="0.006006">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:23.657967" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:23.651426" elapsed="0.006605">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:25.672681" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:25.668255" elapsed="0.004502">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:27.687277" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:27.682647" elapsed="0.004685">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:29.701085" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:29.696789" elapsed="0.004348">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:31.716155" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:31.711845" elapsed="0.004372">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:33.730203" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:33.725882" elapsed="0.004377">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:35.744016" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:35.738296" elapsed="0.005774">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:37.759355" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:37.754157" elapsed="0.005261">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:39.775132" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:39.768912" elapsed="0.006286">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:41.788651" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:41.784317" elapsed="0.004404">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:43.802808" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:43.798185" elapsed="0.004676">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:45.817387" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:45.811108" elapsed="0.006352">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:47.831870" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:47.827313" elapsed="0.004608">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:49.843939" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:49.839660" elapsed="0.004331">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:51.858365" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:51.852434" elapsed="0.006003">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:53.871675" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:53.865481" elapsed="0.006271">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:55.884885" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:55.879523" elapsed="0.005419">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:57.901589" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:57.894807" elapsed="0.006886">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:10:59.914383" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:10:59.908308" elapsed="0.006154">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:01.929917" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:01.923589" elapsed="0.006399">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:03.944802" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:03.938763" elapsed="0.006094">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:05.959499" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:05.953517" elapsed="0.006053">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:07.974876" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:07.968517" elapsed="0.006430">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:09.990881" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:09.984366" elapsed="0.006623">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:12.003080" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:11.995833" elapsed="0.007334">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:14.018381" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:14.012522" elapsed="0.005932">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:16.030948" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:16.024949" elapsed="0.006081">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:18.044521" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:18.039313" elapsed="0.005274">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:20.058415" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:20.051998" elapsed="0.006492">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:22.073252" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:22.066921" elapsed="0.006403">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:24.088741" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:24.083906" elapsed="0.004922">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:26.105130" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:26.098859" elapsed="0.006378">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:28.120065" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:28.114126" elapsed="0.006015">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:30.131146" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:30.125821" elapsed="0.005409">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:32.145573" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:32.141325" elapsed="0.004302">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:34.159150" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:34.154948" elapsed="0.004255">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:36.175520" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:36.169880" elapsed="0.005697">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:38.190899" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:38.184207" elapsed="0.006768">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:40.203393" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:40.197431" elapsed="0.006038">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:42.214927" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:42.210141" elapsed="0.004861">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:44.228627" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:44.224218" elapsed="0.004484">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:46.241416" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:46.235412" elapsed="0.006059">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:48.255534" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:48.249626" elapsed="0.005980">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:50.270482" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:50.263908" elapsed="0.006631">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:52.286495" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:52.279633" elapsed="0.006963">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:54.302822" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:54.297962" elapsed="0.004919">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:56.319251" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:56.312477" elapsed="0.006829">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:11:58.334553" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:11:58.328478" elapsed="0.006147">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:00.346597" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:00.342328" elapsed="0.004338">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:02.361496" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:02.354114" elapsed="0.007487">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:04.378040" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:04.371100" elapsed="0.007042">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:06.391988" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:06.385987" elapsed="0.006074">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:08.408789" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:08.402357" elapsed="0.006507">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:10.424353" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:10.418638" elapsed="0.005776">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:12.436422" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:12.429300" elapsed="0.007177">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:14.449178" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:14.442957" elapsed="0.006296">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:16.465157" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:16.458891" elapsed="0.006334">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:18.479919" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:18.474067" elapsed="0.005917">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:20.495280" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:20.489982" elapsed="0.005357">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:22.509115" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:22.503177" elapsed="0.006007">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:24.524296" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:24.519115" elapsed="0.005244">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:26.537342" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:26.531136" elapsed="0.006302">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:28.549786" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:28.543480" elapsed="0.006401">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:30.561405" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:30.555813" elapsed="0.005665">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:32.576468" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:32.570610" elapsed="0.005925">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:34.589728" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:34.585492" elapsed="0.004290">Variable '${flow_count_after_add}' not found.</status>
</kw>
<kw name="Check Flows Operational Datastore On Member" owner="ClusterOpenFlow">
<msg time="2026-04-17T03:12:36.601422" level="FAIL">Variable '${flow_count_after_add}' not found.</msg>
<arg>${flow_count_after_add}</arg>
<arg>${Inventory_Leader}</arg>
<doc>Check if number of Operational Flows on member of given index is equal to ${flow_count}.</doc>
<status status="FAIL" start="2026-04-17T03:12:36.595879" elapsed="0.005623">Variable '${flow_count_after_add}' not found.</status>
</kw>
<msg time="2026-04-17T03:12:36.601684" 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-04-17T03:05:55.695018" elapsed="400.906854">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-04-17T03:12:36.602146" elapsed="0.000031"/>
</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-04-17T03:12:36.602348" elapsed="0.000024"/>
</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-04-17T03:12:36.602535" elapsed="0.000056"/>
</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-04-17T03:12:36.602818" elapsed="0.000026"/>
</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-04-17T03:12:36.602991" elapsed="0.000021"/>
</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-04-17T03:12:36.603161" elapsed="0.000022"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${oper_datastore_write_time}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:12:36.603365" elapsed="0.000029"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${oper_datastore_write_rate}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:12:36.603602" elapsed="0.000031"/>
</kw>
<doc>Check Flows in Operational Datastore</doc>
<status status="FAIL" start="2026-04-17T03:05:55.694515" elapsed="400.909369">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-04-17T03:12:36.614704" 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-04-17T03:12:36.610251" elapsed="0.004519">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-04-17T03:12:36.615034" elapsed="0.000029"/>
</kw>
<doc>Stop mininet and exit connection.</doc>
<status status="FAIL" start="2026-04-17T03:12:36.604265" elapsed="0.010973">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-04-17T03:12:36.616446" level="INFO">${config_datastore_delete_start_time} = 2026-04-17 03:12:36.616</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-04-17T03:12:36.616096" elapsed="0.000384"/>
</kw>
<kw name="Delete Bulk Flow In Node" owner="BulkomaticKeywords">
<msg time="2026-04-17T03:12:36.652789" 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-04-17T03:12:36.648426" elapsed="0.004447">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-04-17T03:12:36.653162" elapsed="0.000026"/>
</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-04-17T03:12:36.653360" elapsed="0.000020"/>
</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-04-17T03:12:36.653541" elapsed="0.000021"/>
</kw>
<kw name="Log To Console" owner="BuiltIn">
<arg>${\n}</arg>
<doc>Logs the given message to the console.</doc>
<status status="NOT RUN" start="2026-04-17T03:12:36.653755" elapsed="0.000024"/>
</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-04-17T03:12:36.653921" elapsed="0.000021"/>
</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-04-17T03:12:36.654080" elapsed="0.000020"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_delete_time}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:12:36.654253" elapsed="0.000021"/>
</kw>
<kw name="Set Suite Variable" owner="BuiltIn">
<arg>${config_datastore_delete_rate}</arg>
<doc>Makes a variable available everywhere within the scope of the current suite.</doc>
<status status="NOT RUN" start="2026-04-17T03:12:36.654420" elapsed="0.000021"/>
</kw>
<doc>100K Flows deleted via Follower Node2 and verify it gets applied in all instances.</doc>
<status status="FAIL" start="2026-04-17T03:12:36.615469" elapsed="0.039135">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-04-17T03:12:36.655719" 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-04-17T03:12:36.655263" elapsed="0.000523"/>
</kw>
<kw name="Append To File" owner="OperatingSystem">
<msg time="2026-04-17T03:12:36.659952" 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-04-17T03:12:36.655940" elapsed="0.004052">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-04-17T03:12:36.660151" elapsed="0.000023"/>
</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-04-17T03:12:36.660313" elapsed="0.000020"/>
</kw>
<doc>Log results for plotting.</doc>
<status status="FAIL" start="2026-04-17T03:12:36.654869" elapsed="0.005590">Variable '${config_datastore_write_rate}' not found.</status>
</test>
<kw name="Delete All Sessions" owner="RequestsLibrary" type="TEARDOWN">
<msg time="2026-04-17T03:12:36.661208" level="INFO">Deleting All Sessions</msg>
<doc>Removes all the session objects</doc>
<status status="PASS" start="2026-04-17T03:12:36.661119" elapsed="0.000146"/>
</kw>
<doc>Test suite for 3Node Cluster - 100K flows and 10 DPNs in Cluster Scale Up scenario</doc>
<status status="FAIL" start="2026-04-17T03:05:44.692934" elapsed="411.968364"/>
</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>
