def test_client_msg_discard_in_view_change_unit(txnPoolNodeSet):
    node = txnPoolNodeSet[0]
    node.view_changer.view_change_in_progress = True
    msg = sdk_gen_request("op").as_dict
    node.unpackClientMsg(msg, "frm")
    checkDiscardMsg([
        node,
    ], msg, "view change in progress")
def test_client_msg_discard_in_view_change_with_request(test_node):
    test_node.send_nack_to_client = check_nack_msg

    msg = sdk_gen_request({TXN_TYPE: NODE})
    test_node.unpackClientMsg(msg, "frm")
    checkDiscardMsg([
        test_node,
    ], msg.as_dict, "view change in progress")
示例#3
0
def test_discard_process_three_phase_msg_for_old_view(test_node, looper):
    sender = "NodeSender"
    inst_id = 0
    replica = test_node.replicas[inst_id]
    view_no = test_node.viewNo - 1
    pp_seq_no = replica.last_ordered_3pc[1] + 1
    msg = create_prepare((view_no, pp_seq_no), generate_state_root(), inst_id)
    replica._external_bus.process_incoming(msg, sender)
    checkDiscardMsg([replica.stasher, ], msg, OLD_VIEW)
示例#4
0
def test_discard_process_three_phase_msg(test_node, looper):
    sender = "NodeSender"
    inst_id = 0
    replica = test_node.replicas[inst_id]
    view_no = test_node.viewNo
    pp_seq_no = 0  # should start with 1
    msg = create_prepare((view_no, pp_seq_no), generate_state_root(), inst_id)
    replica._external_bus.process_incoming(msg, sender)
    checkDiscardMsg([replica.stasher, ], msg, INCORRECT_PP_SEQ_NO)
def test_client_msg_discard_in_view_change_with_request(txnPoolNodeSet):
    node = txnPoolNodeSet[0]
    node.view_changer.view_change_in_progress = True
    node.send_nack_to_client = check_nack_msg

    msg = sdk_gen_request("op")
    node.unpackClientMsg(msg, "frm")
    checkDiscardMsg([
        node,
    ], msg.as_dict, "view change in progress")
示例#6
0
def test_discard_process_three_phase_already_ordered_msg(test_node, looper):
    sender = "NodeSender"
    inst_id = 0
    replica = test_node.replicas[inst_id]
    replica.last_ordered_3pc = (test_node.viewNo, 100)
    replica._checkpointer.update_watermark_from_3pc()
    view_no = test_node.viewNo
    pp_seq_no = replica.h
    msg = create_prepare((view_no, pp_seq_no), generate_state_root(), inst_id)
    replica._external_bus.process_incoming(msg, sender)
    checkDiscardMsg([replica.stasher, ], msg, ALREADY_ORDERED)
def test_client_msg_discard_in_view_change_with_request(test_node):
    test_node.send_nack_to_client = check_nack_msg

    msg = sdk_gen_request({TXN_TYPE: NODE})
    test_node.unpackClientMsg(msg, "frm")
    checkDiscardMsg([test_node, ], msg.as_dict, "view change in progress")