Documentation
¶
Index ¶
- type APIPackageConfig
- type AntifloodConfig
- type AntifloodDebugConfig
- 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 EndpointsThrottlersConfig
- type EpochStartConfig
- type EvictionWaitingListConfig
- type ExternalConfig
- type FacadeConfig
- type FeeSettings
- type FloodPreventerConfig
- type FullHistoryConfig
- type General
- type GeneralSettingsConfig
- type GlobalSettings
- type GovernanceSystemSCConfig
- type HardforkConfig
- type HeadersPoolConfig
- type HealthServiceConfig
- type HeartbeatConfig
- type IncreaseFactorConfig
- type InterceptorResolverDebugConfig
- type KadDhtPeerDiscoveryConfig
- type MarshalizerConfig
- type MetaChain
- type NTPConfig
- type NodeConfig
- type P2PConfig
- type PeerHonestyConfig
- 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 SoftwareVersionConfig
- type StakingSystemSCConfig
- type StateTriesConfig
- type StorageConfig
- type StoragePruningConfig
- type SystemSmartContractsConfig
- type TopicAntifloodConfig
- type TopicMaxMessagesConfig
- type TrieStorageManagerConfig
- type TxAccumulatorConfig
- type TypeConfig
- type ValidatorStatisticsConfig
- type VirtualMachineConfig
- type VirtualMachineOutOfProcessConfig
- type WebServerAntifloodConfig
- type YearSetting
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
OutOfSpecs FloodPreventerConfig
FastReacting FloodPreventerConfig
SlowReacting FloodPreventerConfig
PeerMaxOutput AntifloodLimitsConfig
Cache CacheConfig
WebServer WebServerAntifloodConfig
Topic TopicAntifloodConfig
TxAccumulator TxAccumulatorConfig
}
AntifloodConfig will hold all p2p antiflood parameters
type AntifloodDebugConfig ¶ added in v1.0.127
AntifloodDebugConfig will hold the antiflood debug configuration
type AntifloodLimitsConfig ¶ added in v1.0.106
type AntifloodLimitsConfig struct {
BaseMessagesPerInterval uint32
TotalSizePerInterval uint64
IncreaseFactor IncreaseFactorConfig
}
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 {
ThresholdNumMessagesPerInterval uint32
ThresholdSizePerInterval 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 {
Name string
Type string
Capacity uint32
SizePerSender uint32
SizeInBytes uint64
SizeInBytesPerSender uint32
Shards uint32
}
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
PublicKeyPIDSignature CacheConfig
PeerHonesty CacheConfig
Antiflood AntifloodConfig
ResourceStats ResourceStatsConfig
Heartbeat HeartbeatConfig
ValidatorStatistics ValidatorStatisticsConfig
GeneralSettings GeneralSettingsConfig
Consensus TypeConfig
StoragePruning StoragePruningConfig
TxLogsStorage StorageConfig
NTPConfig NTPConfig
HeadersPoolConfig HeadersPoolConfig
BlockSizeThrottleConfig BlockSizeThrottleConfig
VirtualMachineConfig VirtualMachineConfig
Hardfork HardforkConfig
Debug DebugConfig
Health HealthServiceConfig
SoftwareVersionConfig SoftwareVersionConfig
FullHistory FullHistoryConfig
}
Config will hold the entire application configuration parameters
type DBConfig ¶
type DBConfig struct {
FilePath string
Type string
BatchDelaySeconds int
MaxBatchSize int
MaxOpenFiles int
}
DBConfig will map the json db configuration
type DebugConfig ¶ added in v1.0.110
type DebugConfig struct {
InterceptorResolver InterceptorResolverDebugConfig
Antiflood AntifloodDebugConfig
}
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
}
EconomicsConfig will hold economics config
type ElasticSearchConfig ¶
ElasticSearchConfig will hold the configuration for the elastic search
type EndpointsThrottlersConfig ¶ added in v1.0.137
EndpointsThrottlersConfig holds a pair of an endpoint and its maximum number of simultaneous go routines
type EpochStartConfig ¶
type EpochStartConfig struct {
MinRoundsBetweenEpochs int64
RoundsPerEpoch int64
MinShuffledOutRestartThreshold float64
MaxShuffledOutRestartThreshold float64
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 FloodPreventerConfig ¶ added in v1.0.120
type FloodPreventerConfig struct {
IntervalInSeconds uint32
ReservedPercent float32
PeerMaxInput AntifloodLimitsConfig
BlackList BlackListConfig
}
FloodPreventerConfig will hold all flood preventer parameters
type FullHistoryConfig ¶ added in v1.0.147
type FullHistoryConfig struct {
Enabled bool
HistoryTransactionStorageConfig StorageConfig
HashEpochStorageConfig StorageConfig
}
FullHistoryConfig holds the configuration for the full history node
type General ¶ added in v0.0.5
type General struct {
StartRating uint32
MaxRating uint32
MinRating uint32
SignedBlocksThreshold float32
SelectionChances []*SelectionChance
}
General will hold ratings settings both for metachain and shardChain
type GeneralSettingsConfig ¶
type GeneralSettingsConfig struct {
StatusPollingIntervalSec int
MaxComputableRounds uint64
StartInEpochEnabled bool
DisableDeploy bool
DisableBuiltInFunctions bool
DisableRelayedTx bool
GenesisString string
}
GeneralSettingsConfig will hold the general settings for a node
type GlobalSettings ¶
type GlobalSettings struct {
GenesisTotalSupply string
MinimumInflation float64
YearSettings []*YearSetting
Denomination int
}
GlobalSettings will hold general economic values
type GovernanceSystemSCConfig ¶ added in v1.0.133
type GovernanceSystemSCConfig struct {
ProposalCost string
NumNodes int64
MinQuorum int32
MinPassThreshold int32
MinVetoThreshold int32
Disabled bool
}
GovernanceSystemSCConfig defines the set of constants to initialize the governance system smart contract
type HardforkConfig ¶ added in v1.0.102
type HardforkConfig struct {
ExportStateStorageConfig StorageConfig
ExportKeysStorageConfig StorageConfig
ExportTriesStorageConfig StorageConfig
ImportStateStorageConfig StorageConfig
ImportKeysStorageConfig StorageConfig
PublicKeyToListenFrom string
ImportFolder string
GenesisTime int64
StartRound uint64
StartNonce uint64
CloseAfterExportInMinutes uint32
StartEpoch uint32
ValidatorGracePeriodInEpochs uint32
EnableTrigger bool
EnableTriggerFromP2P bool
MustImport bool
AfterHardFork bool
}
HardforkConfig holds the configuration for the hardfork trigger
type HeadersPoolConfig ¶
HeadersPoolConfig will map the headers cache configuration
type HealthServiceConfig ¶ added in v1.0.133
type HealthServiceConfig struct {
IntervalVerifyMemoryInSeconds int
IntervalDiagnoseComponentsInSeconds int
IntervalDiagnoseComponentsDeeplyInSeconds int
MemoryUsageToCreateProfiles int
NumMemoryUsageRecordsToKeep int
FolderPath string
}
HealthServiceConfig will hold health service (monitoring) configuration
type HeartbeatConfig ¶
type HeartbeatConfig struct {
MinTimeToWaitBetweenBroadcastsInSec int
MaxTimeToWaitBetweenBroadcastsInSec int
DurationToConsiderUnresponsiveInSec int
HeartbeatRefreshIntervalInSec uint32
HideInactiveValidatorIntervalInSec uint32
HeartbeatStorage StorageConfig
}
HeartbeatConfig will hold all heartbeat settings
type IncreaseFactorConfig ¶ added in v1.0.123
IncreaseFactorConfig defines the configurations used to increase the set values of a flood preventer
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
ProtocolID string
InitialPeerList []string
BucketSize uint32
RoutingTableRefreshIntervalInSec uint32
}
KadDhtPeerDiscoveryConfig will hold the kad-dht discovery config settings
type MarshalizerConfig ¶
type MarshalizerConfig struct {
Type string
//TODO check if we still need this
SizeCheckDelta uint32
}
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 PeerHonestyConfig ¶ added in v1.0.133
type PeerHonestyConfig struct {
DecayCoefficient float64
DecayUpdateIntervalInSeconds uint32
MaxScore float64
MinScore float64
BadPeerThreshold float64
UnitValue float64
}
PeerHonestyConfig holds the parameters for the peer honesty handler
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
PubkeyConfig will map the json public key configuration
type RatingSteps ¶ added in v0.0.5
type RatingSteps struct {
HoursToMaxRatingFromStartRating uint32
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
PeerHonesty PeerHonestyConfig
}
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
ProtocolSustainabilityPercentage float64
ProtocolSustainabilityAddress 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
MaxIntraShardValidators uint32
MaxCrossShardValidators uint32
MaxIntraShardObservers uint32
MaxCrossShardObservers uint32
Type string
}
ShardingConfig will hold the network sharding config settings
type SoftwareVersionConfig ¶ added in v1.0.128
SoftwareVersionConfig will hold the configuration for software version checker
type StakingSystemSCConfig ¶ added in v1.0.147
type StakingSystemSCConfig struct {
GenesisNodePrice string
MinStakeValue string
UnJailValue string
MinStepValue string
UnBondPeriod uint64
AuctionEnableNonce uint64
StakeEnableNonce uint64
NumRoundsWithoutBleed uint64
MaximumPercentageToBleed float64
BleedPercentagePerRound float64
MaxNumberOfNodesForStake uint64
NodesToSelectInAuction uint64
ActivateBLSPubKeyMessageVerification bool
}
StakingSystemSCConfig will hold the staking system smart contract 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
DB DBConfig
Bloom BloomFilterConfig
}
StorageConfig will map the json storage unit configuration
type StoragePruningConfig ¶
type StoragePruningConfig struct {
Enabled bool
CleanOldEpochsData 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
GovernanceSystemSCConfig GovernanceSystemSCConfig
StakingSystemSCConfig StakingSystemSCConfig
}
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
}
TypeConfig will map the json string type configuration
type ValidatorStatisticsConfig ¶ added in v1.0.120
type ValidatorStatisticsConfig struct {
CacheRefreshIntervalInSec uint32
}
ValidatorStatisticsConfig will hold validator statistics specific 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
EndpointsThrottlers []EndpointsThrottlersConfig
}
WebServerAntifloodConfig will hold the anti-flooding parameters for the web server
type YearSetting ¶ added in v1.0.137
YearSetting will hold the maximum inflation rate for year