interface CCFConsensus {
    getLastCommittedTxId(): TransactionId;
    getStatusForTxId(view: number, seqno: number): TransactionStatus;
    getViewForSeqno(seqno: number): null | number;
}

Methods

  • Get the ID of latest transaction known to be committed.

    Returns TransactionId

  • Get the status of a transaction by ID, provided as a view+seqno pair.

    Note that this value is the node's local understanding of the status of that transaction in the network at call time. For a given TxID, the initial status is always UNKNOWN, and eventually becomes COMMITTED or INVALID. See the documentation section titled "Verifying Transactions" for more detail.

        UNKNOWN [Initial status]
         v  ^
       PENDING
       v     v
    

    COMMITTED INVALID [Final statuses]

    This status is not sampled atomically per handler: if this is called multiple times in a transaction handler, later calls may see more up to date values than earlier calls. Once a final state (COMMITTED or INVALID) has been reached, no further changes are possible.

    Parameters

    • view: number
    • seqno: number

    Returns TransactionStatus

  • Get the view associated with a given seqno, to construct a valid TxID. If the seqno is not known by the node, null is returned.

    Parameters

    • seqno: number

    Returns null | number