Documentation
¶
Index ¶
- type APIPackageConfig
- type AntifloodConfig
- type AntifloodLimitsConfig
- type ApiRoutesConfig
- type BlackListConfig
- type BlockSizeThrottleConfig
- type BloomFilterConfig
- type CacheConfig
- type Config
- type DBConfig
- type DebugConfig
- type ESDTSystemSCConfig
- type EconomicsConfig
- type ElasticSearchConfig
- type EpochStartConfig
- type EvictionWaitingListConfig
- type ExternalConfig
- type FacadeConfig
- type FeeSettings
- type General
- type GeneralSettingsConfig
- type GlobalSettings
- type HardforkConfig
- type HeadersPoolConfig
- type HeartbeatConfig
- type InterceptorResolverDebugConfig
- type KadDhtPeerDiscoveryConfig
- type MarshalizerConfig
- type MetaChain
- type NTPConfig
- type NodeConfig
- type P2PConfig
- type Preferences
- type PreferencesConfig
- type PubkeyConfig
- type RatingSteps
- type RatingValue
- type RatingsConfig
- type ResourceStatsConfig
- type RewardsSettings
- type RouteConfig
- type SelectionChance
- type ShardChain
- type ShardingConfig
- type StateTriesConfig
- type StorageConfig
- type StoragePruningConfig
- type SystemSmartContractsConfig
- type TopicAntifloodConfig
- type TopicMaxMessagesConfig
- type TrieStorageManagerConfig
- type TxAccumulatorConfig
- type TypeConfig
- type ValidatorSettings
- type VirtualMachineConfig
- type VirtualMachineOutOfProcessConfig
- type WebServerAntifloodConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type APIPackageConfig ¶ added in v1.0.114
type APIPackageConfig struct {
Routes []RouteConfig
}
APIPackageConfig holds the configuration for the routes of each package
type AntifloodConfig ¶
type AntifloodConfig struct { Enabled bool NumConcurrentResolverJobs int32 NetworkMaxInput AntifloodLimitsConfig PeerMaxInput AntifloodLimitsConfig PeerMaxOutput AntifloodLimitsConfig Cache CacheConfig BlackList BlackListConfig WebServer WebServerAntifloodConfig Topic TopicAntifloodConfig TxAccumulator TxAccumulatorConfig }
AntifloodConfig will hold all p2p antiflood parameters
type AntifloodLimitsConfig ¶ added in v1.0.106
AntifloodLimitsConfig will hold the maximum antiflood limits in both number of messages and total size of the messages
type ApiRoutesConfig ¶ added in v1.0.114
type ApiRoutesConfig struct {
APIPackages map[string]APIPackageConfig
}
ApiRoutesConfig holds the configuration related to Rest API routes
type BlackListConfig ¶
type BlackListConfig struct { ThresholdNumMessagesPerSecond uint32 ThresholdSizePerSecond uint64 NumFloodingRounds uint32 PeerBanDurationInSeconds uint32 }
BlackListConfig will hold the p2p peer black list threshold values
type BlockSizeThrottleConfig ¶
BlockSizeThrottleConfig will hold the configuration for adaptive block size throttle
type BloomFilterConfig ¶
BloomFilterConfig will map the json bloom filter configuration
type CacheConfig ¶
type CacheConfig struct { Type string `json:"type"` Size uint32 `json:"size"` SizeInBytes uint32 `json:"sizeInBytes"` Shards uint32 `json:"shards"` }
CacheConfig will map the json cache configuration
type Config ¶
type Config struct { MiniBlocksStorage StorageConfig PeerBlockBodyStorage StorageConfig BlockHeaderStorage StorageConfig TxStorage StorageConfig UnsignedTransactionStorage StorageConfig RewardTxStorage StorageConfig ShardHdrNonceHashStorage StorageConfig MetaHdrNonceHashStorage StorageConfig StatusMetricsStorage StorageConfig BootstrapStorage StorageConfig MetaBlockStorage StorageConfig AccountsTrieStorage StorageConfig PeerAccountsTrieStorage StorageConfig TrieSnapshotDB DBConfig EvictionWaitingList EvictionWaitingListConfig StateTriesConfig StateTriesConfig TrieStorageManagerConfig TrieStorageManagerConfig BadBlocksCache CacheConfig TxBlockBodyDataPool CacheConfig PeerBlockBodyDataPool CacheConfig TxDataPool CacheConfig UnsignedTransactionDataPool CacheConfig RewardTransactionDataPool CacheConfig TrieNodesDataPool CacheConfig WhiteListPool CacheConfig WhiteListerVerifiedTxs CacheConfig EpochStartConfig EpochStartConfig AddressPubkeyConverter PubkeyConfig ValidatorPubkeyConverter PubkeyConfig Hasher TypeConfig MultisigHasher TypeConfig Marshalizer MarshalizerConfig VmMarshalizer TypeConfig TxSignMarshalizer TypeConfig PublicKeyShardId CacheConfig PublicKeyPeerId CacheConfig PeerIdShardId CacheConfig Antiflood AntifloodConfig ResourceStats ResourceStatsConfig Heartbeat HeartbeatConfig GeneralSettings GeneralSettingsConfig Consensus TypeConfig StoragePruning StoragePruningConfig TxLogsStorage StorageConfig NTPConfig NTPConfig HeadersPoolConfig HeadersPoolConfig BlockSizeThrottleConfig BlockSizeThrottleConfig VirtualMachineConfig VirtualMachineConfig Hardfork HardforkConfig Debug DebugConfig }
Config will hold the entire application configuration parameters
type DBConfig ¶
type DBConfig struct { FilePath string `json:"file"` Type string `json:"type"` BatchDelaySeconds int `json:"batchDelaySeconds"` MaxBatchSize int `json:"maxBatchSize"` MaxOpenFiles int `json:"maxOpenFiles"` }
DBConfig will map the json db configuration
type DebugConfig ¶ added in v1.0.110
type DebugConfig struct {
InterceptorResolver InterceptorResolverDebugConfig
}
DebugConfig will hold debugging configuration
type ESDTSystemSCConfig ¶ added in v1.0.114
ESDTSystemSCConfig defines a set of constant to initialize the esdt system smart contract
type EconomicsConfig ¶
type EconomicsConfig struct { GlobalSettings GlobalSettings RewardsSettings RewardsSettings FeeSettings FeeSettings ValidatorSettings ValidatorSettings }
EconomicsConfig will hold economics config
type ElasticSearchConfig ¶
ElasticSearchConfig will hold the configuration for the elastic search
type EpochStartConfig ¶
type EpochStartConfig struct { MinRoundsBetweenEpochs int64 RoundsPerEpoch int64 ShuffledOutRestartThreshold float64 ShuffleBetweenShards bool MinNumConnectedPeersToStart int MinNumOfPeersToConsiderBlockValid int }
EpochStartConfig will hold the configuration of EpochStart settings
type EvictionWaitingListConfig ¶
EvictionWaitingListConfig will hold the configuration for the EvictionWaitingList
type ExternalConfig ¶
type ExternalConfig struct {
ElasticSearchConnector ElasticSearchConfig
}
ExternalConfig will hold the configurations for external tools, such as Explorer or Elastic Search
type FacadeConfig ¶
FacadeConfig will hold different configuration option that will be passed to the main ElrondFacade
type FeeSettings ¶
type FeeSettings struct { MaxGasLimitPerBlock string MaxGasLimitPerMetaBlock string GasPerDataByte string DataLimitForBaseCalc string MinGasPrice string MinGasLimit string }
FeeSettings will hold economics fee settings
type General ¶ added in v0.0.5
type General struct { StartRating uint32 MaxRating uint32 MinRating uint32 SignedBlocksThreshold float32 HoursToMaxRatingFromStartRating uint32 SelectionChances []*SelectionChance }
General will hold ratings settings both for metachain and shardChain
type GeneralSettingsConfig ¶
type GeneralSettingsConfig struct { StatusPollingIntervalSec int MaxComputableRounds uint64 StartInEpochEnabled bool }
GeneralSettingsConfig will hold the general settings for a node
type GlobalSettings ¶
GlobalSettings will hold general economic values
type HardforkConfig ¶ added in v1.0.102
type HardforkConfig struct { EnableTrigger bool EnableTriggerFromP2P bool PublicKeyToListenFrom string MustImport bool StartRound uint64 StartNonce uint64 StartEpoch uint32 ValidatorGracePeriodInEpochs uint32 ImportFolder string ExportStateStorageConfig StorageConfig ImportStateStorageConfig StorageConfig }
HardforkConfig holds the configuration for the hardfork trigger
type HeadersPoolConfig ¶
HeadersPoolConfig will map the headers cache configuration
type HeartbeatConfig ¶
type HeartbeatConfig struct { MinTimeToWaitBetweenBroadcastsInSec int MaxTimeToWaitBetweenBroadcastsInSec int DurationToConsiderUnresponsiveInSec int HeartbeatRefreshIntervalInSec uint32 HideInactiveValidatorIntervalInSec uint32 PeerTypeRefreshIntervalInSec uint32 HeartbeatStorage StorageConfig }
HeartbeatConfig will hold all heartbeat settings
type InterceptorResolverDebugConfig ¶ added in v1.0.110
type InterceptorResolverDebugConfig struct { Enabled bool EnablePrint bool CacheSize int IntervalAutoPrintInSeconds int NumRequestsThreshold int NumResolveFailureThreshold int DebugLineExpiration int }
InterceptorResolverDebugConfig will hold the interceptor-resolver debug configuration
type KadDhtPeerDiscoveryConfig ¶
type KadDhtPeerDiscoveryConfig struct { Enabled bool RefreshIntervalInSec uint32 RandezVous string InitialPeerList []string BucketSize uint32 RoutingTableRefreshIntervalInSec uint32 }
KadDhtPeerDiscoveryConfig will hold the kad-dht discovery config settings
type MarshalizerConfig ¶
type MarshalizerConfig struct { Type string `json:"type"` //TODO check if we still need this SizeCheckDelta uint32 `json:"sizeCheckDelta"` }
MarshalizerConfig holds the marshalizer related configuration
type MetaChain ¶ added in v0.0.5
type MetaChain struct {
RatingSteps
}
MetaChain will hold RatingSteps for the Meta
type NTPConfig ¶
type NTPConfig struct { Hosts []string Port int TimeoutMilliseconds int SyncPeriodSeconds int Version int }
NTPConfig will hold the configuration for NTP queries
type NodeConfig ¶
NodeConfig will hold basic p2p settings
type P2PConfig ¶
type P2PConfig struct { Node NodeConfig KadDhtPeerDiscovery KadDhtPeerDiscoveryConfig Sharding ShardingConfig }
P2PConfig will hold all the P2P settings
type Preferences ¶
type Preferences struct {
Preferences PreferencesConfig
}
Preferences will hold the configuration related to node's preferences
type PreferencesConfig ¶
type PreferencesConfig struct { DestinationShardAsObserver string NodeDisplayName string Identity string }
PreferencesConfig will hold the fields which are node specific such as the display name
type PubkeyConfig ¶ added in v1.0.104
type PubkeyConfig struct { Length int `json:"length"` Type string `json:"type"` SignatureLength int }
PubkeyConfig will map the json public key configuration
type RatingSteps ¶ added in v0.0.5
type RatingSteps struct { ProposerValidatorImportance float32 ProposerDecreaseFactor float32 ValidatorDecreaseFactor float32 ConsecutiveMissedBlocksPenalty float32 }
RatingSteps holds the necessary increases and decreases of the rating steps
type RatingValue ¶
RatingValue will hold different rating options with increase and decrease steps
type RatingsConfig ¶ added in v0.0.5
type RatingsConfig struct { General General ShardChain ShardChain MetaChain MetaChain }
RatingsConfig will hold the configuration data needed for the ratings
type ResourceStatsConfig ¶
ResourceStatsConfig will hold all resource stats settings
type RewardsSettings ¶
type RewardsSettings struct { LeaderPercentage float64 DeveloperPercentage float64 CommunityPercentage float64 CommunityAddress string DenominationCoefficientForView string }
RewardsSettings will hold economics rewards settings
type RouteConfig ¶ added in v1.0.114
RouteConfig holds the configuration for a single route
type SelectionChance ¶
SelectionChance will hold the percentage modifier for up to the specified threshold
type ShardChain ¶ added in v0.0.5
type ShardChain struct {
RatingSteps
}
ShardChain will hold RatingSteps for the Shard
type ShardingConfig ¶
type ShardingConfig struct { TargetPeerCount int PrioBits uint32 MaxIntraShardValidators uint32 MaxCrossShardValidators uint32 MaxIntraShardObservers uint32 MaxCrossShardObservers uint32 Type string }
ShardingConfig will hold the network sharding config settings
type StateTriesConfig ¶
type StateTriesConfig struct { CheckpointRoundsModulus uint AccountsStatePruningEnabled bool PeerStatePruningEnabled bool MaxStateTrieLevelInMemory uint MaxPeerTrieLevelInMemory uint }
StateTriesConfig will hold information about state tries
type StorageConfig ¶
type StorageConfig struct { Cache CacheConfig `json:"cache"` DB DBConfig `json:"db"` Bloom BloomFilterConfig `json:"bloom"` }
StorageConfig will map the json storage unit configuration
type StoragePruningConfig ¶
type StoragePruningConfig struct { Enabled bool FullArchive bool NumEpochsToKeep uint64 NumActivePersisters uint64 }
StoragePruningConfig will hold settings relates to storage pruning
type SystemSmartContractsConfig ¶ added in v1.0.114
type SystemSmartContractsConfig struct {
ESDTSystemSCConfig ESDTSystemSCConfig
}
SystemSmartContractsConfig defines the system smart contract configs
type TopicAntifloodConfig ¶
type TopicAntifloodConfig struct { DefaultMaxMessagesPerSec uint32 MaxMessages []TopicMaxMessagesConfig }
TopicAntifloodConfig will hold the maximum values per second to be used in certain topics
type TopicMaxMessagesConfig ¶
TopicMaxMessagesConfig will hold the maximum number of messages/sec per topic value
type TrieStorageManagerConfig ¶ added in v1.0.103
type TrieStorageManagerConfig struct { PruningBufferLen uint32 SnapshotsBufferLen uint32 MaxSnapshots uint8 }
TrieStorageManagerConfig will hold config information about trie storage manager
type TxAccumulatorConfig ¶
type TxAccumulatorConfig struct { MaxAllowedTimeInMilliseconds uint32 MaxDeviationTimeInMilliseconds uint32 }
TxAccumulatorConfig will hold the tx accumulator config values
type TypeConfig ¶
type TypeConfig struct {
Type string `json:"type"`
}
TypeConfig will map the json string type configuration
type ValidatorSettings ¶
type ValidatorSettings struct { GenesisNodePrice string UnBondPeriod string TotalSupply string MinStepValue string AuctionEnableNonce string StakeEnableNonce string NumRoundsWithoutBleed string MaximumPercentageToBleed string BleedPercentagePerRound string UnJailValue string ActivateBLSPubKeyMessageVerification bool }
ValidatorSettings will hold the validator settings
type VirtualMachineConfig ¶ added in v0.0.5
type VirtualMachineConfig struct { OutOfProcessEnabled bool OutOfProcessConfig VirtualMachineOutOfProcessConfig }
VirtualMachineConfig holds configuration for the Virtual Machine(s)
type VirtualMachineOutOfProcessConfig ¶ added in v0.0.5
type VirtualMachineOutOfProcessConfig struct { LogsMarshalizer string MessagesMarshalizer string MaxLoopTime int }
VirtualMachineOutOfProcessConfig holds configuration for out-of-process virtual machine(s)
type WebServerAntifloodConfig ¶
type WebServerAntifloodConfig struct { SimultaneousRequests uint32 SameSourceRequests uint32 SameSourceResetIntervalInSec uint32 }
WebServerAntifloodConfig will hold the anti-lflooding parameters for the web server