Bitcoin ABC  0.29.2
P2P Digital Currency
mempool_options.h
Go to the documentation of this file.
1 // Copyright (c) 2022 The Bitcoin Core developers
2 // Distributed under the MIT software license, see the accompanying
3 // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4 #ifndef BITCOIN_KERNEL_MEMPOOL_OPTIONS_H
5 #define BITCOIN_KERNEL_MEMPOOL_OPTIONS_H
6 
7 #include <policy/policy.h>
8 #include <script/standard.h>
9 
10 #include <chrono>
11 #include <cstdint>
12 
14 static constexpr unsigned int DEFAULT_MAX_MEMPOOL_SIZE_MB{300};
18 static constexpr unsigned int DEFAULT_MEMPOOL_EXPIRY_HOURS{336};
19 
20 namespace kernel {
30  int check_ratio{0};
32  std::chrono::seconds expiry{
33  std::chrono::hours{DEFAULT_MEMPOOL_EXPIRY_HOURS}};
48  std::optional<unsigned> max_datacarrier_bytes{
50  : std::nullopt};
52  bool require_standard{true};
53 };
54 } // namespace kernel
55 
56 #endif // BITCOIN_KERNEL_MEMPOOL_OPTIONS_H
Fee rate in satoshis per kilobyte: Amount / kB.
Definition: feerate.h:21
static constexpr unsigned int DEFAULT_MAX_MEMPOOL_SIZE_MB
Default for -maxmempool, maximum megabytes of mempool memory usage.
static constexpr unsigned int DEFAULT_MEMPOOL_EXPIRY_HOURS
Default for -mempoolexpiry, expiration time for mempool transactions in hours.
static constexpr Amount DUST_RELAY_TX_FEE(1000 *SATOSHI)
Min feerate for defining dust.
static constexpr bool DEFAULT_PERMIT_BAREMULTISIG
Default for -permitbaremultisig.
Definition: policy.h:56
static constexpr Amount DEFAULT_MIN_RELAY_TX_FEE_PER_KB(1000 *SATOSHI)
Default for -minrelaytxfee, minimum relay fee for transactions.
static const unsigned int MAX_OP_RETURN_RELAY
Default setting for nMaxDatacarrierBytes.
Definition: standard.h:36
static const bool DEFAULT_ACCEPT_DATACARRIER
Definition: standard.h:17
Options struct containing options for constructing a CTxMemPool.
int check_ratio
The ratio used to determine how often sanity checks will run.
std::optional< unsigned > max_datacarrier_bytes
A data carrying output is an unspendable output containing data.
CFeeRate min_relay_feerate
A fee rate smaller than this is considered zero fee (for relaying, mining and transaction creation)
std::chrono::seconds expiry