def test_disable_view_change(disable_view_change_config, looper, nodeSet, up, viewNo, wallet1, client1): assert disable_view_change_config assert isinstance(disable_view_change_config.unsafe, set) assert 'disable_view_change' in disable_view_change_config.unsafe simulate_slow_master(looper, nodeSet, wallet1, client1) with pytest.raises(AssertionError): waitForViewChange(looper, nodeSet, expectedViewNo=viewNo + 1)
def test_disable_view_change(disable_view_change_config, looper, txnPoolNodeSet, viewNo, sdk_pool_handle, sdk_wallet_steward): assert disable_view_change_config assert isinstance(disable_view_change_config.unsafe, set) assert 'disable_view_change' in disable_view_change_config.unsafe simulate_slow_master(looper, txnPoolNodeSet, sdk_pool_handle, sdk_wallet_steward) with pytest.raises(AssertionError): waitForViewChange(looper, txnPoolNodeSet, expectedViewNo=viewNo + 1)
def test_view_change_on_performance_degraded(looper, nodeSet, up, viewNo, wallet1, client1): """ Test that a view change is done when the performance of master goes down Send multiple requests from the client and delay some requests by master instance so that there is a view change. All nodes will agree that master performance degraded """ old_primary_node = get_master_primary_node(list(nodeSet.nodes.values())) simulate_slow_master(looper, nodeSet, wallet1, client1) waitForViewChange(looper, nodeSet, expectedViewNo=viewNo + 1) ensureElectionsDone(looper=looper, nodes=nodeSet) ensure_all_nodes_have_same_data(looper, nodes=nodeSet) new_primary_node = get_master_primary_node(list(nodeSet.nodes.values())) assert old_primary_node.name != new_primary_node.name
def test_disable_view_change( disable_view_change_config, looper, txnPoolNodeSet, viewNo, sdk_pool_handle, sdk_wallet_steward): assert disable_view_change_config assert isinstance(disable_view_change_config.unsafe, set) assert 'disable_view_change' in disable_view_change_config.unsafe simulate_slow_master(looper, txnPoolNodeSet, sdk_pool_handle, sdk_wallet_steward) with pytest.raises(AssertionError): waitForViewChange(looper, txnPoolNodeSet, expectedViewNo=viewNo + 1)
def test_view_change_on_performance_degraded(looper, txnPoolNodeSet, viewNo, sdk_pool_handle, sdk_wallet_steward): """ Test that a view change is done when the performance of master goes down Send multiple requests from the client and delay some requests by master instance so that there is a view change. All nodes will agree that master performance degraded """ old_primary_node = get_master_primary_node(list(txnPoolNodeSet)) simulate_slow_master(looper, txnPoolNodeSet, sdk_pool_handle, sdk_wallet_steward) waitForViewChange(looper, txnPoolNodeSet, expectedViewNo=viewNo + 1) ensureElectionsDone(looper=looper, nodes=txnPoolNodeSet) ensure_all_nodes_have_same_data(looper, nodes=txnPoolNodeSet) new_primary_node = get_master_primary_node(list(txnPoolNodeSet)) assert old_primary_node.name != new_primary_node.name
def test_view_change_on_performance_degraded(looper, txnPoolNodeSet, viewNo, sdk_pool_handle, sdk_wallet_steward): """ Test that a view change is done when the performance of master goes down Send multiple requests from the client and delay some requests by master instance so that there is a view change. All nodes will agree that master performance degraded """ old_primary_node = get_master_primary_node(list(txnPoolNodeSet)) simulate_slow_master(looper, txnPoolNodeSet, sdk_pool_handle, sdk_wallet_steward) waitForViewChange(looper, txnPoolNodeSet, expectedViewNo=viewNo + 1) ensureElectionsDone(looper=looper, nodes=txnPoolNodeSet) ensure_all_nodes_have_same_data(looper, nodes=txnPoolNodeSet) new_primary_node = get_master_primary_node(list(txnPoolNodeSet)) assert old_primary_node.name != new_primary_node.name waitNodeDataEquality(looper, *txnPoolNodeSet)