Class ConsensusConfiguration


  • public abstract class ConsensusConfiguration
    extends Object
    Blockchain Consensus algorithm parameters.

    See Exonum configuration for Consensus configuration details.

    • Constructor Detail

      • ConsensusConfiguration

        public ConsensusConfiguration()
    • Method Detail

      • firstRoundTimeout

        @SerializedName("first_round_timeout")
        public abstract long firstRoundTimeout()
        Interval between first two rounds. This interval defines the time that passes between the moment a new block is committed to the blockchain and the time when second round starts, regardless of whether a new block has been committed during this period or not.

        Note that rounds in Exonum do not have a defined end time. Nodes in a new round can continue to vote for proposals and process messages related to previous rounds.

      • statusTimeout

        @SerializedName("status_timeout")
        public abstract long statusTimeout()
        This parameter defines the frequency with which a node broadcasts its status message to the network.
      • peersTimeout

        @SerializedName("peers_timeout")
        public abstract long peersTimeout()
        This parameter defines the frequency with which a node requests collected Connect messages from a random peer node in the network.
      • txsBlockLimit

        @SerializedName("txs_block_limit")
        public abstract int txsBlockLimit()
        Maximum number of transactions per block.
      • maxMessageLen

        @SerializedName("max_message_len")
        public abstract int maxMessageLen()
        This parameter determines the maximum size of both consensus messages and transactions.
      • minProposeTimeout

        @SerializedName("min_propose_timeout")
        public abstract long minProposeTimeout()
        Minimal propose timeout.
      • maxProposeTimeout

        @SerializedName("max_propose_timeout")
        public abstract long maxProposeTimeout()
        Maximal propose timeout.
      • proposeTimeoutThreshold

        @SerializedName("propose_timeout_threshold")
        public abstract int proposeTimeoutThreshold()
        Amount of transactions in pool to start use min_propose_timeout.