CatapultServer  v0.5.0.1 (Elephant)
catapult::config::NodeConfiguration Struct Reference

Node configuration settings. More...

Collaboration diagram for catapult::config::NodeConfiguration:

Classes

struct  ConnectionsSubConfiguration
 Connections configuration. More...
 
struct  IncomingConnectionsSubConfiguration
 Incoming connections configuration. More...
 
struct  LocalSubConfiguration
 Local node configuration. More...
 

Static Public Member Functions

static NodeConfiguration Uninitialized ()
 Creates an uninitialized node configuration. More...
 
static NodeConfiguration LoadFromBag (const utils::ConfigurationBag &bag)
 Loads a node configuration from bag. More...
 

Public Attributes

unsigned short Port
 Server port. More...
 
unsigned short ApiPort
 Server api port. More...
 
bool ShouldAllowAddressReuse
 true if the server should reuse ports already in use. More...
 
bool ShouldUseSingleThreadPool
 true if a single thread pool should be used, false if multiple thread pools should be used. More...
 
bool ShouldUseCacheDatabaseStorage
 true if cache data should be saved in a database. More...
 
bool ShouldEnableAutoSyncCleanup
 
bool ShouldEnableTransactionSpamThrottling
 true if transaction spam throttling should be enabled. More...
 
Amount TransactionSpamThrottlingMaxBoostFee
 Maximum fee that will boost a transaction through the spam throttle when spam throttling is enabled. More...
 
uint32_t MaxBlocksPerSyncAttempt
 Maximum number of blocks per sync attempt. More...
 
utils::FileSize MaxChainBytesPerSyncAttempt
 Maximum chain bytes per sync attempt. More...
 
utils::TimeSpan ShortLivedCacheTransactionDuration
 Duration of a transaction in the short lived cache. More...
 
utils::TimeSpan ShortLivedCacheBlockDuration
 Duration of a block in the short lived cache. More...
 
utils::TimeSpan ShortLivedCachePruneInterval
 Time between short lived cache pruning. More...
 
uint32_t ShortLivedCacheMaxSize
 Maximum size of a short lived cache. More...
 
BlockFeeMultiplier MinFeeMultiplier
 Minimum fee multiplier of transactions to propagate and include in blocks. More...
 
model::TransactionSelectionStrategy TransactionSelectionStrategy
 Transaction selection strategy used for syncing and harvesting unconfirmed transactions. More...
 
utils::FileSize UnconfirmedTransactionsCacheMaxResponseSize
 Maximum size of an unconfirmed transactions response. More...
 
uint32_t UnconfirmedTransactionsCacheMaxSize
 Maximum size of the unconfirmed transactions cache. More...
 
utils::TimeSpan ConnectTimeout
 Timeout for connecting to a peer. More...
 
utils::TimeSpan SyncTimeout
 Timeout for syncing with a peer. More...
 
utils::FileSize SocketWorkingBufferSize
 Initial socket working buffer size (socket reads will attempt to read buffers of roughly this size). More...
 
uint32_t SocketWorkingBufferSensitivity
 
utils::FileSize MaxPacketDataSize
 Maximum packet data size. More...
 
uint32_t BlockDisruptorSize
 Size of the block disruptor circular buffer. More...
 
uint32_t BlockElementTraceInterval
 Multiple of elements at which a block element should be traced through queue and completion. More...
 
uint32_t TransactionDisruptorSize
 Size of the transaction disruptor circular buffer. More...
 
uint32_t TransactionElementTraceInterval
 Multiple of elements at which a transaction element should be traced through queue and completion. More...
 
bool ShouldAbortWhenDispatcherIsFull
 true if the process should terminate when any dispatcher is full. More...
 
bool ShouldAuditDispatcherInputs
 true if all dispatcher inputs should be audited. More...
 
ionet::ConnectionSecurityMode OutgoingSecurityMode
 Security mode of outgoing connections initiated by this node. More...
 
ionet::ConnectionSecurityMode IncomingSecurityModes
 Accepted security modes of incoming connections initiated by other nodes. More...
 
utils::FileSize MaxCacheDatabaseWriteBatchSize
 Maximum cache database write batch size. More...
 
uint32_t MaxTrackedNodes
 Maximum number of nodes to track in memory. More...
 
LocalSubConfiguration Local
 Local node configuration. More...
 
ConnectionsSubConfiguration OutgoingConnections
 Outgoing connections configuration. More...
 
IncomingConnectionsSubConfiguration IncomingConnections
 Incoming connections configuration. More...
 

Private Member Functions

 NodeConfiguration ()=default
 

Detailed Description

Node configuration settings.

Constructor & Destructor Documentation

◆ NodeConfiguration()

catapult::config::NodeConfiguration::NodeConfiguration ( )
privatedefault
Here is the caller graph for this function:

Member Function Documentation

◆ LoadFromBag()

NodeConfiguration catapult::config::NodeConfiguration::LoadFromBag ( const utils::ConfigurationBag bag)
static

Loads a node configuration from bag.

Here is the call graph for this function:

◆ Uninitialized()

NodeConfiguration catapult::config::NodeConfiguration::Uninitialized ( )
static

Creates an uninitialized node configuration.

Here is the call graph for this function:

Member Data Documentation

◆ ApiPort

unsigned short catapult::config::NodeConfiguration::ApiPort

Server api port.

◆ BlockDisruptorSize

uint32_t catapult::config::NodeConfiguration::BlockDisruptorSize

Size of the block disruptor circular buffer.

◆ BlockElementTraceInterval

uint32_t catapult::config::NodeConfiguration::BlockElementTraceInterval

Multiple of elements at which a block element should be traced through queue and completion.

◆ ConnectTimeout

utils::TimeSpan catapult::config::NodeConfiguration::ConnectTimeout

Timeout for connecting to a peer.

◆ IncomingConnections

IncomingConnectionsSubConfiguration catapult::config::NodeConfiguration::IncomingConnections

Incoming connections configuration.

◆ IncomingSecurityModes

ionet::ConnectionSecurityMode catapult::config::NodeConfiguration::IncomingSecurityModes

Accepted security modes of incoming connections initiated by other nodes.

◆ Local

LocalSubConfiguration catapult::config::NodeConfiguration::Local

Local node configuration.

◆ MaxBlocksPerSyncAttempt

uint32_t catapult::config::NodeConfiguration::MaxBlocksPerSyncAttempt

Maximum number of blocks per sync attempt.

◆ MaxCacheDatabaseWriteBatchSize

utils::FileSize catapult::config::NodeConfiguration::MaxCacheDatabaseWriteBatchSize

Maximum cache database write batch size.

◆ MaxChainBytesPerSyncAttempt

utils::FileSize catapult::config::NodeConfiguration::MaxChainBytesPerSyncAttempt

Maximum chain bytes per sync attempt.

◆ MaxPacketDataSize

utils::FileSize catapult::config::NodeConfiguration::MaxPacketDataSize

Maximum packet data size.

◆ MaxTrackedNodes

uint32_t catapult::config::NodeConfiguration::MaxTrackedNodes

Maximum number of nodes to track in memory.

◆ MinFeeMultiplier

BlockFeeMultiplier catapult::config::NodeConfiguration::MinFeeMultiplier

Minimum fee multiplier of transactions to propagate and include in blocks.

◆ OutgoingConnections

ConnectionsSubConfiguration catapult::config::NodeConfiguration::OutgoingConnections

Outgoing connections configuration.

◆ OutgoingSecurityMode

ionet::ConnectionSecurityMode catapult::config::NodeConfiguration::OutgoingSecurityMode

Security mode of outgoing connections initiated by this node.

◆ Port

unsigned short catapult::config::NodeConfiguration::Port

Server port.

◆ ShortLivedCacheBlockDuration

utils::TimeSpan catapult::config::NodeConfiguration::ShortLivedCacheBlockDuration

Duration of a block in the short lived cache.

◆ ShortLivedCacheMaxSize

uint32_t catapult::config::NodeConfiguration::ShortLivedCacheMaxSize

Maximum size of a short lived cache.

◆ ShortLivedCachePruneInterval

utils::TimeSpan catapult::config::NodeConfiguration::ShortLivedCachePruneInterval

Time between short lived cache pruning.

◆ ShortLivedCacheTransactionDuration

utils::TimeSpan catapult::config::NodeConfiguration::ShortLivedCacheTransactionDuration

Duration of a transaction in the short lived cache.

◆ ShouldAbortWhenDispatcherIsFull

bool catapult::config::NodeConfiguration::ShouldAbortWhenDispatcherIsFull

true if the process should terminate when any dispatcher is full.

◆ ShouldAllowAddressReuse

bool catapult::config::NodeConfiguration::ShouldAllowAddressReuse

true if the server should reuse ports already in use.

◆ ShouldAuditDispatcherInputs

bool catapult::config::NodeConfiguration::ShouldAuditDispatcherInputs

true if all dispatcher inputs should be audited.

◆ ShouldEnableAutoSyncCleanup

bool catapult::config::NodeConfiguration::ShouldEnableAutoSyncCleanup

true if temporary sync files should be automatically cleaned up.

Note
This should be false if broker process is running.

◆ ShouldEnableTransactionSpamThrottling

bool catapult::config::NodeConfiguration::ShouldEnableTransactionSpamThrottling

true if transaction spam throttling should be enabled.

◆ ShouldUseCacheDatabaseStorage

bool catapult::config::NodeConfiguration::ShouldUseCacheDatabaseStorage

true if cache data should be saved in a database.

◆ ShouldUseSingleThreadPool

bool catapult::config::NodeConfiguration::ShouldUseSingleThreadPool

true if a single thread pool should be used, false if multiple thread pools should be used.

◆ SocketWorkingBufferSensitivity

uint32_t catapult::config::NodeConfiguration::SocketWorkingBufferSensitivity

Socket working buffer sensitivity (lower values will cause memory to be more aggressively reclaimed).

Note
0 will disable memory reclamation.

◆ SocketWorkingBufferSize

utils::FileSize catapult::config::NodeConfiguration::SocketWorkingBufferSize

Initial socket working buffer size (socket reads will attempt to read buffers of roughly this size).

◆ SyncTimeout

utils::TimeSpan catapult::config::NodeConfiguration::SyncTimeout

Timeout for syncing with a peer.

◆ TransactionDisruptorSize

uint32_t catapult::config::NodeConfiguration::TransactionDisruptorSize

Size of the transaction disruptor circular buffer.

◆ TransactionElementTraceInterval

uint32_t catapult::config::NodeConfiguration::TransactionElementTraceInterval

Multiple of elements at which a transaction element should be traced through queue and completion.

◆ TransactionSelectionStrategy

model::TransactionSelectionStrategy catapult::config::NodeConfiguration::TransactionSelectionStrategy

Transaction selection strategy used for syncing and harvesting unconfirmed transactions.

◆ TransactionSpamThrottlingMaxBoostFee

Amount catapult::config::NodeConfiguration::TransactionSpamThrottlingMaxBoostFee

Maximum fee that will boost a transaction through the spam throttle when spam throttling is enabled.

◆ UnconfirmedTransactionsCacheMaxResponseSize

utils::FileSize catapult::config::NodeConfiguration::UnconfirmedTransactionsCacheMaxResponseSize

Maximum size of an unconfirmed transactions response.

◆ UnconfirmedTransactionsCacheMaxSize

uint32_t catapult::config::NodeConfiguration::UnconfirmedTransactionsCacheMaxSize

Maximum size of the unconfirmed transactions cache.


The documentation for this struct was generated from the following files: