${TRANSACTION_RATE_1K} ${1000}
${TRANSACTION_PRODUCTION_TIME_2X_REQ_TIMEOUT} ${2*${REQUEST_TIMEOUT}}
${TRANSACTION_PRODUCTION_TIME} ${40}
+${SLEEP_AFTER_TRANSACTIONS_INIT} 5s
${ID_PREFIX} prefix-
${ID_PREFIX2} different-prefix-
${SIMPLE_TX} ${False}
${ip_trans_as_list} = BuiltIn.Create_List ${ODL_SYSTEM_${idx_trans}_IP}
${idx_trans_as_list} = BuiltIn.Create_List ${idx_trans}
MdsalLowlevelPy.Start_Write_Transactions_On_Nodes ${ip_trans_as_list} ${idx_trans_as_list} ${ID_PREFIX} ${TRANSACTION_PRODUCTION_TIME} ${TRANSACTION_RATE_1K} chained_flag=${CHAINED_TX}
- BuiltIn.Sleep 5s
+ BuiltIn.Sleep ${SLEEP_AFTER_TRANSACTIONS_INIT}
ClusterAdmin.Make_Leader_Local ${idx_to} ${shard_name} ${shard_type}
${new_leader} ${new_followers} = BuiltIn.Wait_Until_Keyword_Succeeds 60s 5s ClusterManagement.Verify_Shard_Leader_Elected ${shard_name}
... ${shard_type} ${True} ${idx_from} verify_restconf=False
${ip_trans_as_list} = BuiltIn.Create_List ${ODL_SYSTEM_${idx_trans}_IP}
${idx_trans_as_list} = BuiltIn.Create_List ${idx_trans}
MdsalLowlevelPy.Start_Produce_Transactions_On_Nodes ${ip_trans_as_list} ${idx_trans_as_list} ${ID_PREFIX} ${TRANSACTION_PRODUCTION_TIME} ${TRANSACTION_RATE_1K}
- BuiltIn.Sleep 5s
+ BuiltIn.Sleep ${SLEEP_AFTER_TRANSACTIONS_INIT}
MdsalLowlevel.Become_Prefix_Leader ${idx_to} ${shard_name}
${new_leader} ${new_followers} = BuiltIn.Wait_Until_Keyword_Succeeds 60s 5s ClusterManagement.Verify_Shard_Leader_Elected ${shard_name}!!
... ${shard_type} ${True} ${idx_from} verify_restconf=False
${producer_ip_as_list} = BuiltIn.Create_List ${ODL_SYSTEM_${producer_idx}_IP}
${producer_idx_as_list} = BuiltIn.Create_List ${producer_idx}
MdsalLowlevelPy.Start_Write_Transactions_On_Nodes ${producer_ip_as_list} ${producer_idx_as_list} ${ID_PREFIX} ${TRANSACTION_PRODUCTION_TIME} ${TRANSACTION_RATE_1K} chained_flag=${CHAINED_TX}
- BuiltIn.Sleep 5s
+ BuiltIn.Sleep ${SLEEP_AFTER_TRANSACTIONS_INIT}
ClusterAdmin.Remove_Shard_Replica ${actual_leader} ${shard_name} member-${actual_leader} ${shard_type}
${removed} = BuiltIn.Set_Variable ${True}
${resp_list} = MdsalLowlevelPy.Wait_For_Transactions
${producer_ip_as_list} = BuiltIn.Create_List ${ODL_SYSTEM_${producer_idx}_IP}
${producer_idx_as_list} = BuiltIn.Create_List ${producer_idx}
MdsalLowlevelPy.Start_Produce_Transactions_On_Nodes ${producer_ip_as_list} ${producer_idx_as_list} ${ID_PREFIX} ${TRANSACTION_PRODUCTION_TIME} ${TRANSACTION_RATE_1K}
- BuiltIn.Sleep 5s
+ BuiltIn.Sleep ${SLEEP_AFTER_TRANSACTIONS_INIT}
ClusterAdmin.Remove_Prefix_Shard_Replica ${actual_leader} ${shard_name} member-${actual_leader} ${shard_type}
BuiltIn.Wait_Until_Keyword_Succeeds 60s 5s ClusterManagement.Get_Leader_And_Followers_For_Shard shard_name=${shard_name}!! shard_type=${shard_type} member_index_list=${follower_list}
... verify_restconf=False
${leader} ${follower_list} = ClusterManagement.Get_Leader_And_Followers_For_Shard shard_name=${shard_name} shard_type=${shard_type} member_index_list=${all_indices} verify_restconf=False
${all_ip_list} = ClusterManagement.Resolve_IP_Address_For_Members ${all_indices}
MdsalLowlevelPy.Start_Write_Transactions_On_Nodes ${all_ip_list} ${all_indices} ${ID_PREFIX} ${producing_transactions_time} ${TRANSACTION_RATE_1K} chained_flag=${CHAINED_TX}
- BuiltIn.Sleep 5s
+ BuiltIn.Sleep ${SLEEP_AFTER_TRANSACTIONS_INIT}
${date_start} = DateTime.Get_Current_Date
${date_end} = DateTime.Add_Time_To_Date ${date_start} ${producing_transactions_time}
KarafKeywords.Log_Message_To_Controller_Karaf Isolating node ${leader}
${leader} ${follower_list} = ClusterManagement.Get_Leader_And_Followers_For_Shard shard_name=${shard_name}!! shard_type=${shard_type} member_index_list=${all_indices} verify_restconf=False
${all_ip_list} = ClusterManagement.Resolve_IP_Address_For_Members ${all_indices}
MdsalLowlevelPy.Start_Produce_Transactions_On_Nodes ${all_ip_list} ${all_indices} ${ID_PREFIX} ${producing_transactions_time} ${TRANSACTION_RATE_1K}
- BuiltIn.Sleep 5s
+ BuiltIn.Sleep ${SLEEP_AFTER_TRANSACTIONS_INIT}
${date_start} = DateTime.Get_Current_Date
${date_end} = DateTime.Add_Time_To_Date ${date_start} ${producing_transactions_time}
KarafKeywords.Log_Message_To_Controller_Karaf Isolating node ${leader}
${client_node_ip} = ClusterManagement.Resolve_IP_Address_For_Member ${client_node_dst}
${client_node_ip_as_list} BuiltIn.Create_List ${client_node_ip}
${client_node_idx_as_list} BuiltIn.Create_List ${client_node_dst}
- MdsalLowlevelPy.Start_Write_Transactions_On_Nodes ${client_node_ip_as_list} ${client_node_idx_as_list} ${ID_PREFIX} ${TRANSACTION_PRODUCTION_TIME_2X_REQ_TIMEOUT} ${TRANSACTION_RATE_1K} chained_flag=${trans_chain_flag}
- BuiltIn.Sleep 5s
${start_date} DateTime.Get_Current_Date
${abort_date} = DateTime.Add_Time_To_Date ${start_date} ${REQUEST_TIMEOUT}
+ MdsalLowlevelPy.Start_Write_Transactions_On_Nodes ${client_node_ip_as_list} ${client_node_idx_as_list} ${ID_PREFIX} ${TRANSACTION_PRODUCTION_TIME_2X_REQ_TIMEOUT} ${TRANSACTION_RATE_1K} chained_flag=${trans_chain_flag}
+ BuiltIn.Sleep ${SLEEP_AFTER_TRANSACTIONS_INIT}
KarafKeywords.Log_Message_To_Controller_Karaf Isolating node ${client_node_dst}
ClusterManagement.Isolate_Member_From_List_Or_All ${client_node_dst}
${rpc_timeout} = Get_Seconds_To_Time ${abort_date}
${client_node_ip} = ClusterManagement.Resolve_IP_Address_For_Member ${client_node_dst}
${client_node_ip_as_list} BuiltIn.Create_List ${client_node_ip}
${client_node_idx_as_list} BuiltIn.Create_List ${client_node_dst}
- MdsalLowlevelPy.Start_Produce_Transactions_On_Nodes ${client_node_ip_as_list} ${client_node_idx_as_list} ${ID_PREFIX} ${TRANSACTION_PRODUCTION_TIME_2X_REQ_TIMEOUT} ${TRANSACTION_RATE_1K} isolated_transactions_flag=${isolated_transactions_flag}
- BuiltIn.Sleep 5s
${start_date} DateTime.Get_Current_Date
${abort_date} = DateTime.Add_Time_To_Date ${start_date} ${REQUEST_TIMEOUT}
+ MdsalLowlevelPy.Start_Produce_Transactions_On_Nodes ${client_node_ip_as_list} ${client_node_idx_as_list} ${ID_PREFIX} ${TRANSACTION_PRODUCTION_TIME_2X_REQ_TIMEOUT} ${TRANSACTION_RATE_1K} isolated_transactions_flag=${isolated_transactions_flag}
+ BuiltIn.Sleep ${SLEEP_AFTER_TRANSACTIONS_INIT}
KarafKeywords.Log_Message_To_Controller_Karaf Isolating node ${client_node_dst}
ClusterManagement.Isolate_Member_From_List_Or_All ${client_node_dst}
${rpc_timeout} = Get_Seconds_To_Time ${abort_date}
${subscribed} = BuiltIn.Set_Variable ${True}
${all_ip_list} = ClusterManagement.Resolve_IP_Address_For_Members ${all_indices}
MdsalLowlevelPy.Start_Write_Transactions_On_Nodes ${all_ip_list} ${all_indices} ${ID_PREFIX} ${TRANSACTION_PRODUCTION_TIME} ${TRANSACTION_RATE_1K} chained_flag=${CHAINED_TX}
- BuiltIn.Sleep 5s
+ BuiltIn.Sleep ${SLEEP_AFTER_TRANSACTIONS_INIT}
ClusterAdmin.Remove_Shard_Replica ${leader} ${shard_name} member-${leader} ${shard_type}
${newleader} ${newfollower_list} = BuiltIn.Wait_Until_Keyword_Succeeds 60s 5s ClusterManagement.Get_Leader_And_Followers_For_Shard shard_name=${shard_name}
... shard_type=${shard_type} member_index_list=${follower_list} verify_restconf=False
${subscribed} = BuiltIn.Set_Variable ${True}
${all_ip_list} = ClusterManagement.Resolve_IP_Address_For_Members ${all_indices}
MdsalLowlevelPy.Start_Produce_Transactions_On_Nodes ${all_ip_list} ${all_indices} ${ID_PREFIX} ${TRANSACTION_PRODUCTION_TIME} ${TRANSACTION_RATE_1K}
- BuiltIn.Sleep 5s
+ BuiltIn.Sleep ${SLEEP_AFTER_TRANSACTIONS_INIT}
ClusterAdmin.Remove_Prefix_Shard_Replica ${leader} ${shard_name} member-${leader} ${shard_type}
${newleader} ${newfollower_list} = BuiltIn.Wait_Until_Keyword_Succeeds 60s 5s ClusterManagement.Get_Leader_And_Followers_For_Shard shard_name=${shard_name}!!
... member_index_list=${follower_list} verify_restconf=False shard_type=${shard_type}