github.com/ari-anchor/sei-tendermint@v0.0.0-20230519144642-dc826b7b56bb/scripts/confix/testdata/v35-config.toml (about)

     1  # This is a TOML config file.
     2  # For more information, see https://github.com/toml-lang/toml
     3  
     4  # NOTE: Any path below can be absolute (e.g. "/var/myawesomeapp/data") or
     5  # relative to the home directory (e.g. "data"). The home directory is
     6  # "$HOME/.tendermint" by default, but could be changed via $TMHOME env variable
     7  # or --home cmd flag.
     8  
     9  #######################################################################
    10  ###                   Main Base Config Options                      ###
    11  #######################################################################
    12  
    13  # TCP or UNIX socket address of the ABCI application,
    14  # or the name of an ABCI application compiled in with the Tendermint binary
    15  proxy-app = "tcp://127.0.0.1:26658"
    16  
    17  # A custom human readable name for this node
    18  moniker = "localhost"
    19  
    20  # Mode of Node: full | validator | seed
    21  # * validator node
    22  #   - all reactors
    23  #   - with priv_validator_key.json, priv_validator_state.json
    24  # * full node
    25  #   - all reactors
    26  #   - No priv_validator_key.json, priv_validator_state.json
    27  # * seed node
    28  #   - only P2P, PEX Reactor
    29  #   - No priv_validator_key.json, priv_validator_state.json
    30  mode = "validator"
    31  
    32  # Database backend: goleveldb | cleveldb | boltdb | rocksdb | badgerdb
    33  # * goleveldb (github.com/syndtr/goleveldb - most popular implementation)
    34  #   - pure go
    35  #   - stable
    36  # * cleveldb (uses levigo wrapper)
    37  #   - fast
    38  #   - requires gcc
    39  #   - use cleveldb build tag (go build -tags cleveldb)
    40  # * boltdb (uses etcd's fork of bolt - github.com/etcd-io/bbolt)
    41  #   - EXPERIMENTAL
    42  #   - may be faster is some use-cases (random reads - indexer)
    43  #   - use boltdb build tag (go build -tags boltdb)
    44  # * rocksdb (uses github.com/tecbot/gorocksdb)
    45  #   - EXPERIMENTAL
    46  #   - requires gcc
    47  #   - use rocksdb build tag (go build -tags rocksdb)
    48  # * badgerdb (uses github.com/dgraph-io/badger)
    49  #   - EXPERIMENTAL
    50  #   - use badgerdb build tag (go build -tags badgerdb)
    51  db-backend = "goleveldb"
    52  
    53  # Database directory
    54  db-dir = "data"
    55  
    56  # Output level for logging, including package level options
    57  log-level = "info"
    58  
    59  # Output format: 'plain' (colored text) or 'json'
    60  log-format = "plain"
    61  
    62  ##### additional base config options #####
    63  
    64  # Path to the JSON file containing the initial validator set and other meta data
    65  genesis-file = "config/genesis.json"
    66  
    67  # Path to the JSON file containing the private key to use for node authentication in the p2p protocol
    68  node-key-file = "config/node_key.json"
    69  
    70  # Mechanism to connect to the ABCI application: socket | grpc
    71  abci = "socket"
    72  
    73  # If true, query the ABCI app on connecting to a new peer
    74  # so the app can decide if we should keep the connection or not
    75  filter-peers = false
    76  
    77  
    78  #######################################################
    79  ###       Priv Validator Configuration              ###
    80  #######################################################
    81  [priv-validator]
    82  
    83  # Path to the JSON file containing the private key to use as a validator in the consensus protocol
    84  key-file = "config/priv_validator_key.json"
    85  
    86  # Path to the JSON file containing the last sign state of a validator
    87  state-file = "data/priv_validator_state.json"
    88  
    89  # TCP or UNIX socket address for Tendermint to listen on for
    90  # connections from an external PrivValidator process
    91  # when the listenAddr is prefixed with grpc instead of tcp it will use the gRPC Client
    92  laddr = ""
    93  
    94  # Path to the client certificate generated while creating needed files for secure connection.
    95  # If a remote validator address is provided but no certificate, the connection will be insecure
    96  client-certificate-file = ""
    97  
    98  # Client key generated while creating certificates for secure connection
    99  client-key-file = ""
   100  
   101  # Path to the Root Certificate Authority used to sign both client and server certificates
   102  root-ca-file = ""
   103  
   104  
   105  #######################################################################
   106  ###                 Advanced Configuration Options                  ###
   107  #######################################################################
   108  
   109  #######################################################
   110  ###       RPC Server Configuration Options          ###
   111  #######################################################
   112  [rpc]
   113  
   114  # TCP or UNIX socket address for the RPC server to listen on
   115  laddr = "tcp://127.0.0.1:26657"
   116  
   117  # A list of origins a cross-domain request can be executed from
   118  # Default value '[]' disables cors support
   119  # Use '["*"]' to allow any origin
   120  cors-allowed-origins = []
   121  
   122  # A list of methods the client is allowed to use with cross-domain requests
   123  cors-allowed-methods = ["HEAD", "GET", "POST", ]
   124  
   125  # A list of non simple headers the client is allowed to use with cross-domain requests
   126  cors-allowed-headers = ["Origin", "Accept", "Content-Type", "X-Requested-With", "X-Server-Time", ]
   127  
   128  # TCP or UNIX socket address for the gRPC server to listen on
   129  # NOTE: This server only supports /broadcast_tx_commit
   130  # Deprecated gRPC  in the RPC layer of Tendermint will be deprecated in 0.36.
   131  grpc-laddr = ""
   132  
   133  # Maximum number of simultaneous connections.
   134  # Does not include RPC (HTTP&WebSocket) connections. See max-open-connections
   135  # If you want to accept a larger number than the default, make sure
   136  # you increase your OS limits.
   137  # 0 - unlimited.
   138  # Should be < {ulimit -Sn} - {MaxNumInboundPeers} - {MaxNumOutboundPeers} - {N of wal, db and other open files}
   139  # 1024 - 40 - 10 - 50 = 924 = ~900
   140  # Deprecated gRPC  in the RPC layer of Tendermint will be deprecated in 0.36.
   141  grpc-max-open-connections = 900
   142  
   143  # Activate unsafe RPC commands like /dial-seeds and /unsafe-flush-mempool
   144  unsafe = false
   145  
   146  # Maximum number of simultaneous connections (including WebSocket).
   147  # Does not include gRPC connections. See grpc-max-open-connections
   148  # If you want to accept a larger number than the default, make sure
   149  # you increase your OS limits.
   150  # 0 - unlimited.
   151  # Should be < {ulimit -Sn} - {MaxNumInboundPeers} - {MaxNumOutboundPeers} - {N of wal, db and other open files}
   152  # 1024 - 40 - 10 - 50 = 924 = ~900
   153  max-open-connections = 900
   154  
   155  # Maximum number of unique clientIDs that can /subscribe
   156  # If you're using /broadcast_tx_commit, set to the estimated maximum number
   157  # of broadcast_tx_commit calls per block.
   158  max-subscription-clients = 100
   159  
   160  # Maximum number of unique queries a given client can /subscribe to
   161  # If you're using GRPC (or Local RPC client) and /broadcast_tx_commit, set to
   162  # the estimated # maximum number of broadcast_tx_commit calls per block.
   163  max-subscriptions-per-client = 5
   164  
   165  # Experimental parameter to specify the maximum number of events a node will
   166  # buffer, per subscription, before returning an error and closing the
   167  # subscription. Must be set to at least 100, but higher values will accommodate
   168  # higher event throughput rates (and will use more memory).
   169  experimental-subscription-buffer-size = 200
   170  
   171  # Experimental parameter to specify the maximum number of RPC responses that
   172  # can be buffered per WebSocket client. If clients cannot read from the
   173  # WebSocket endpoint fast enough, they will be disconnected, so increasing this
   174  # parameter may reduce the chances of them being disconnected (but will cause
   175  # the node to use more memory).
   176  #
   177  # Must be at least the same as "experimental-subscription-buffer-size",
   178  # otherwise connections could be dropped unnecessarily. This value should
   179  # ideally be somewhat higher than "experimental-subscription-buffer-size" to
   180  # accommodate non-subscription-related RPC responses.
   181  experimental-websocket-write-buffer-size = 200
   182  
   183  # If a WebSocket client cannot read fast enough, at present we may
   184  # silently drop events instead of generating an error or disconnecting the
   185  # client.
   186  #
   187  # Enabling this experimental parameter will cause the WebSocket connection to
   188  # be closed instead if it cannot read fast enough, allowing for greater
   189  # predictability in subscription behavior.
   190  experimental-close-on-slow-client = false
   191  
   192  # How long to wait for a tx to be committed during /broadcast_tx_commit.
   193  # WARNING: Using a value larger than 10s will result in increasing the
   194  # global HTTP write timeout, which applies to all connections and endpoints.
   195  # See https://github.com/tendermint/tendermint/issues/3435
   196  timeout-broadcast-tx-commit = "10s"
   197  
   198  # Maximum size of request body, in bytes
   199  max-body-bytes = 1000000
   200  
   201  # Maximum size of request header, in bytes
   202  max-header-bytes = 1048576
   203  
   204  # The path to a file containing certificate that is used to create the HTTPS server.
   205  # Might be either absolute path or path related to Tendermint's config directory.
   206  # If the certificate is signed by a certificate authority,
   207  # the certFile should be the concatenation of the server's certificate, any intermediates,
   208  # and the CA's certificate.
   209  # NOTE: both tls-cert-file and tls-key-file must be present for Tendermint to create HTTPS server.
   210  # Otherwise, HTTP server is run.
   211  tls-cert-file = ""
   212  
   213  # The path to a file containing matching private key that is used to create the HTTPS server.
   214  # Might be either absolute path or path related to Tendermint's config directory.
   215  # NOTE: both tls-cert-file and tls-key-file must be present for Tendermint to create HTTPS server.
   216  # Otherwise, HTTP server is run.
   217  tls-key-file = ""
   218  
   219  # pprof listen address (https://golang.org/pkg/net/http/pprof)
   220  pprof-laddr = ""
   221  
   222  #######################################################
   223  ###           P2P Configuration Options             ###
   224  #######################################################
   225  [p2p]
   226  
   227  # Enable the legacy p2p layer.
   228  use-legacy = false
   229  
   230  # Select the p2p internal queue
   231  queue-type = "priority"
   232  
   233  # Address to listen for incoming connections
   234  laddr = "tcp://0.0.0.0:26656"
   235  
   236  # Address to advertise to peers for them to dial
   237  # If empty, will use the same port as the laddr,
   238  # and will introspect on the listener or use UPnP
   239  # to figure out the address. ip and port are required
   240  # example: 159.89.10.97:26656
   241  external-address = ""
   242  
   243  # Comma separated list of seed nodes to connect to
   244  # We only use these if we can’t connect to peers in the addrbook
   245  # NOTE: not used by the new PEX reactor. Please use BootstrapPeers instead.
   246  # TODO: Remove once p2p refactor is complete
   247  # ref: https:#github.com/tendermint/tendermint/issues/5670
   248  seeds = ""
   249  
   250  # Comma separated list of peers to be added to the peer store
   251  # on startup. Either BootstrapPeers or PersistentPeers are
   252  # needed for peer discovery
   253  bootstrap-peers = ""
   254  
   255  # Comma separated list of nodes to keep persistent connections to
   256  persistent-peers = ""
   257  
   258  # UPNP port forwarding
   259  upnp = false
   260  
   261  # Path to address book
   262  # TODO: Remove once p2p refactor is complete in favor of peer store.
   263  addr-book-file = "config/addrbook.json"
   264  
   265  # Set true for strict address routability rules
   266  # Set false for private or local networks
   267  addr-book-strict = true
   268  
   269  # Maximum number of inbound peers
   270  #
   271  # TODO: Remove once p2p refactor is complete in favor of MaxConnections.
   272  # ref: https://github.com/tendermint/tendermint/issues/5670
   273  max-num-inbound-peers = 40
   274  
   275  # Maximum number of outbound peers to connect to, excluding persistent peers
   276  #
   277  # TODO: Remove once p2p refactor is complete in favor of MaxConnections.
   278  # ref: https://github.com/tendermint/tendermint/issues/5670
   279  max-num-outbound-peers = 10
   280  
   281  # Maximum number of connections (inbound and outbound).
   282  max-connections = 64
   283  
   284  # Rate limits the number of incoming connection attempts per IP address.
   285  max-incoming-connection-attempts = 100
   286  
   287  # List of node IDs, to which a connection will be (re)established ignoring any existing limits
   288  # TODO: Remove once p2p refactor is complete.
   289  # ref: https://github.com/tendermint/tendermint/issues/5670
   290  unconditional-peer-ids = ""
   291  
   292  # Maximum pause when redialing a persistent peer (if zero, exponential backoff is used)
   293  # TODO: Remove once p2p refactor is complete
   294  # ref: https:#github.com/tendermint/tendermint/issues/5670
   295  persistent-peers-max-dial-period = "0s"
   296  
   297  # Time to wait before flushing messages out on the connection
   298  # TODO: Remove once p2p refactor is complete
   299  # ref: https:#github.com/tendermint/tendermint/issues/5670
   300  flush-throttle-timeout = "100ms"
   301  
   302  # Maximum size of a message packet payload, in bytes
   303  # TODO: Remove once p2p refactor is complete
   304  # ref: https:#github.com/tendermint/tendermint/issues/5670
   305  max-packet-msg-payload-size = 1400
   306  
   307  # Rate at which packets can be sent, in bytes/second
   308  # TODO: Remove once p2p refactor is complete
   309  # ref: https:#github.com/tendermint/tendermint/issues/5670
   310  send-rate = 5120000
   311  
   312  # Rate at which packets can be received, in bytes/second
   313  # TODO: Remove once p2p refactor is complete
   314  # ref: https:#github.com/tendermint/tendermint/issues/5670
   315  recv-rate = 5120000
   316  
   317  # Set true to enable the peer-exchange reactor
   318  pex = true
   319  
   320  # Comma separated list of peer IDs to keep private (will not be gossiped to other peers)
   321  # Warning: IPs will be exposed at /net_info, for more information https://github.com/tendermint/tendermint/issues/3055
   322  private-peer-ids = ""
   323  
   324  # Toggle to disable guard against peers connecting from the same ip.
   325  allow-duplicate-ip = false
   326  
   327  # Peer connection configuration.
   328  handshake-timeout = "20s"
   329  dial-timeout = "3s"
   330  
   331  #######################################################
   332  ###          Mempool Configuration Option          ###
   333  #######################################################
   334  [mempool]
   335  
   336  # Mempool version to use:
   337  #   1) "v0" - The legacy non-prioritized mempool reactor.
   338  #   2) "v1" (default) - The prioritized mempool reactor.
   339  version = "v1"
   340  
   341  recheck = true
   342  broadcast = true
   343  
   344  # Maximum number of transactions in the mempool
   345  size = 5000
   346  
   347  # Limit the total size of all txs in the mempool.
   348  # This only accounts for raw transactions (e.g. given 1MB transactions and
   349  # max-txs-bytes=5MB, mempool will only accept 5 transactions).
   350  max-txs-bytes = 1073741824
   351  
   352  # Size of the cache (used to filter transactions we saw earlier) in transactions
   353  cache-size = 10000
   354  
   355  # Do not remove invalid transactions from the cache (default: false)
   356  # Set to true if it's not possible for any invalid transaction to become valid
   357  # again in the future.
   358  keep-invalid-txs-in-cache = false
   359  
   360  # Maximum size of a single transaction.
   361  # NOTE: the max size of a tx transmitted over the network is {max-tx-bytes}.
   362  max-tx-bytes = 1048576
   363  
   364  # Maximum size of a batch of transactions to send to a peer
   365  # Including space needed by encoding (one varint per transaction).
   366  # XXX: Unused due to https://github.com/tendermint/tendermint/issues/5796
   367  max-batch-bytes = 0
   368  
   369  # ttl-duration, if non-zero, defines the maximum amount of time a transaction
   370  # can exist for in the mempool.
   371  #
   372  # Note, if ttl-num-blocks is also defined, a transaction will be removed if it
   373  # has existed in the mempool at least ttl-num-blocks number of blocks or if it's
   374  # insertion time into the mempool is beyond ttl-duration.
   375  ttl-duration = "0s"
   376  
   377  # ttl-num-blocks, if non-zero, defines the maximum number of blocks a transaction
   378  # can exist for in the mempool.
   379  #
   380  # Note, if ttl-duration is also defined, a transaction will be removed if it
   381  # has existed in the mempool at least ttl-num-blocks number of blocks or if
   382  # it's insertion time into the mempool is beyond ttl-duration.
   383  ttl-num-blocks = 0
   384  
   385  #######################################################
   386  ###         State Sync Configuration Options        ###
   387  #######################################################
   388  [statesync]
   389  # State sync rapidly bootstraps a new node by discovering, fetching, and restoring a state machine
   390  # snapshot from peers instead of fetching and replaying historical blocks. Requires some peers in
   391  # the network to take and serve state machine snapshots. State sync is not attempted if the node
   392  # has any local state (LastBlockHeight > 0). The node will have a truncated block history,
   393  # starting from the height of the snapshot.
   394  enable = false
   395  
   396  # State sync uses light client verification to verify state. This can be done either through the
   397  # P2P layer or RPC layer. Set this to true to use the P2P layer. If false (default), RPC layer
   398  # will be used.
   399  use-p2p = false
   400  
   401  # If using RPC, at least two addresses need to be provided. They should be compatible with net.Dial,
   402  # for example: "host.example.com:2125"
   403  rpc-servers = ""
   404  
   405  # The hash and height of a trusted block. Must be within the trust-period.
   406  trust-height = 0
   407  trust-hash = ""
   408  
   409  # The trust period should be set so that Tendermint can detect and gossip misbehavior before
   410  # it is considered expired. For chains based on the Cosmos SDK, one day less than the unbonding
   411  # period should suffice.
   412  trust-period = "168h0m0s"
   413  
   414  # Time to spend discovering snapshots before initiating a restore.
   415  discovery-time = "15s"
   416  
   417  # Temporary directory for state sync snapshot chunks, defaults to os.TempDir().
   418  # The synchronizer will create a new, randomly named directory within this directory
   419  # and remove it when the sync is complete.
   420  temp-dir = ""
   421  
   422  # The timeout duration before re-requesting a chunk, possibly from a different
   423  # peer (default: 15 seconds).
   424  chunk-request-timeout = "15s"
   425  
   426  # The number of concurrent chunk and block fetchers to run (default: 4).
   427  fetchers = "4"
   428  
   429  #######################################################
   430  ###       Block Sync Configuration Connections       ###
   431  #######################################################
   432  [blocksync]
   433  
   434  # If this node is many blocks behind the tip of the chain, BlockSync
   435  # allows them to catchup quickly by downloading blocks in parallel
   436  # and verifying their commits
   437  enable = true
   438  
   439  # Block Sync version to use:
   440  #   1) "v0" (default) - the standard Block Sync implementation
   441  #   2) "v2" - DEPRECATED, please use v0
   442  version = "v0"
   443  
   444  #######################################################
   445  ###         Consensus Configuration Options         ###
   446  #######################################################
   447  [consensus]
   448  
   449  wal-file = "data/cs.wal/wal"
   450  
   451  # How long we wait for a proposal block before prevoting nil
   452  timeout-propose = "3s"
   453  # How much timeout-propose increases with each round
   454  timeout-propose-delta = "500ms"
   455  # How long we wait after receiving +2/3 prevotes for “anything” (ie. not a single block or nil)
   456  timeout-prevote = "1s"
   457  # How much the timeout-prevote increases with each round
   458  timeout-prevote-delta = "500ms"
   459  # How long we wait after receiving +2/3 precommits for “anything” (ie. not a single block or nil)
   460  timeout-precommit = "1s"
   461  # How much the timeout-precommit increases with each round
   462  timeout-precommit-delta = "500ms"
   463  # How long we wait after committing a block, before starting on the new
   464  # height (this gives us a chance to receive some more precommits, even
   465  # though we already have +2/3).
   466  timeout-commit = "1s"
   467  
   468  # How many blocks to look back to check existence of the node's consensus votes before joining consensus
   469  # When non-zero, the node will panic upon restart
   470  # if the same consensus key was used to sign {double-sign-check-height} last blocks.
   471  # So, validators should stop the state machine, wait for some blocks, and then restart the state machine to avoid panic.
   472  double-sign-check-height = 0
   473  
   474  # Make progress as soon as we have all the precommits (as if TimeoutCommit = 0)
   475  skip-timeout-commit = false
   476  
   477  # EmptyBlocks mode and possible interval between empty blocks
   478  create-empty-blocks = true
   479  create-empty-blocks-interval = "0s"
   480  
   481  # Reactor sleep duration parameters
   482  peer-gossip-sleep-duration = "100ms"
   483  peer-query-maj23-sleep-duration = "2s"
   484  
   485  #######################################################
   486  ###   Transaction Indexer Configuration Options     ###
   487  #######################################################
   488  [tx-index]
   489  
   490  # The backend database list to back the indexer.
   491  # If list contains "null" or "", meaning no indexer service will be used.
   492  #
   493  # The application will set which txs to index. In some cases a node operator will be able
   494  # to decide which txs to index based on configuration set in the application.
   495  #
   496  # Options:
   497  #   1) "null"
   498  #   2) "kv" (default) - the simplest possible indexer, backed by key-value storage (defaults to levelDB; see DBBackend).
   499  #   3) "psql" - the indexer services backed by PostgreSQL.
   500  # When "kv" or "psql" is chosen "tx.height" and "tx.hash" will always be indexed.
   501  indexer = ["kv"]
   502  
   503  # The PostgreSQL connection configuration, the connection format:
   504  #   postgresql://<user>:<password>@<host>:<port>/<db>?<opts>
   505  psql-conn = ""
   506  
   507  #######################################################
   508  ###       Instrumentation Configuration Options     ###
   509  #######################################################
   510  [instrumentation]
   511  
   512  # When true, Prometheus metrics are served under /metrics on
   513  # PrometheusListenAddr.
   514  # Check out the documentation for the list of available metrics.
   515  prometheus = false
   516  
   517  # Address to listen for Prometheus collector(s) connections
   518  prometheus-listen-addr = ":26660"
   519  
   520  # Maximum number of simultaneous connections.
   521  # If you want to accept a larger number than the default, make sure
   522  # you increase your OS limits.
   523  # 0 - unlimited.
   524  max-open-connections = 3
   525  
   526  # Instrumentation namespace
   527  namespace = "tendermint"