config

package
v1.2.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 18, 2021 License: GPL-3.0 Imports: 0 Imported by: 0

Documentation

Index

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

type AntifloodDebugConfig struct {
	Enabled                    bool
	CacheSize                  int
	IntervalAutoPrintInSeconds int
}

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 ApiLoggingConfig added in v1.2.0

type ApiLoggingConfig struct {
	LoggingEnabled          bool
	ThresholdInMicroSeconds int
}

ApiLoggingConfig holds the configuration related to API requests logging

type ApiRoutesConfig added in v1.0.114

type ApiRoutesConfig struct {
	Logging     ApiLoggingConfig
	APIPackages map[string]APIPackageConfig
}

ApiRoutesConfig holds the configuration related to Rest API routes

type ArwenVersionByEpoch added in v1.1.60

type ArwenVersionByEpoch struct {
	StartEpoch uint32
	Version    string
}

ArwenVersionByEpoch represents the Arwen version to be used starting with an epoch

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

type BlockSizeThrottleConfig struct {
	MinSizeInBytes uint32
	MaxSizeInBytes uint32
}

BlockSizeThrottleConfig will hold the configuration for adaptive block size throttle

type BloomFilterConfig

type BloomFilterConfig struct {
	Size     uint
	HashFunc []string
}

BloomFilterConfig will map the 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 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
	ReceiptsStorage                 StorageConfig
	SmartContractsStorage           StorageConfig
	SmartContractsStorageForSCQuery StorageConfig
	TrieEpochRootHashStorage        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
	SmartContractDataPool       CacheConfig
	EpochStartConfig            EpochStartConfig
	AddressPubkeyConverter      PubkeyConfig
	ValidatorPubkeyConverter    PubkeyConfig
	Hasher                      TypeConfig
	MultisigHasher              TypeConfig
	Marshalizer                 MarshalizerConfig
	VmMarshalizer               TypeConfig
	TxSignMarshalizer           TypeConfig
	TxSignHasher                TypeConfig

	PublicKeyShardId      CacheConfig
	PublicKeyPeerId       CacheConfig
	PeerIdShardId         CacheConfig
	PublicKeyPIDSignature CacheConfig
	PeerHonesty           CacheConfig

	Antiflood           AntifloodConfig
	ResourceStats       ResourceStatsConfig
	Heartbeat           HeartbeatConfig
	ValidatorStatistics ValidatorStatisticsConfig
	GeneralSettings     GeneralSettingsConfig
	Consensus           ConsensusConfig
	StoragePruning      StoragePruningConfig
	TxLogsStorage       StorageConfig

	NTPConfig               NTPConfig
	HeadersPoolConfig       HeadersPoolConfig
	BlockSizeThrottleConfig BlockSizeThrottleConfig
	VirtualMachine          VirtualMachineServicesConfig

	Hardfork HardforkConfig
	Debug    DebugConfig
	Health   HealthServiceConfig

	SoftwareVersionConfig SoftwareVersionConfig
	DbLookupExtensions    DbLookupExtensionsConfig
	Versions              VersionsConfig
	Logs                  LogsConfig
	TrieSync              TrieSyncConfig
	Resolvers             ResolverConfig
}

Config will hold the entire application configuration parameters

type Configs added in v1.2.0

type Configs struct {
	GeneralConfig            *Config
	ApiRoutesConfig          *ApiRoutesConfig
	EconomicsConfig          *EconomicsConfig
	SystemSCConfig           *SystemSmartContractsConfig
	RatingsConfig            *RatingsConfig
	PreferencesConfig        *Preferences
	ExternalConfig           *ExternalConfig
	P2pConfig                *P2PConfig
	FlagsConfig              *ContextFlagsConfig
	ImportDbConfig           *ImportDbConfig
	ConfigurationPathsHolder *ConfigurationPathsHolder
	EpochConfig              *EpochConfig
}

Configs is a holder for the node configuration parameters

type ConfigurationPathsHolder added in v1.2.0

type ConfigurationPathsHolder struct {
	MainConfig                 string
	ApiRoutes                  string
	Economics                  string
	SystemSC                   string
	Ratings                    string
	Preferences                string
	External                   string
	P2p                        string
	GasScheduleDirectoryName   string
	Nodes                      string
	Genesis                    string
	SmartContracts             string
	ValidatorKey               string
	ElasticSearchTemplatesPath string
	Epoch                      string
}

ConfigurationPathsHolder holds all configuration filenames and configuration paths used to start the node

type ConsensusConfig added in v1.2.0

type ConsensusConfig struct {
	Type string
}

ConsensusConfig holds the consensus configuration parameters

type ContextFlagsConfig added in v1.2.0

type ContextFlagsConfig struct {
	WorkingDir                   string
	EnableGops                   bool
	SaveLogFile                  bool
	EnableLogCorrelation         bool
	EnableLogName                bool
	LogLevel                     string
	DisableAnsiColor             bool
	CleanupStorage               bool
	UseHealthService             bool
	SessionInfoFileOutput        string
	EnableTxIndexing             bool
	BootstrapRoundIndex          uint64
	RestApiInterface             string
	EnablePprof                  bool
	UseLogView                   bool
	ValidatorKeyIndex            int
	EnableRestAPIServerDebugMode bool
	Version                      string
}

ContextFlagsConfig will keep the values for the cli.Context flags

type DBConfig

type DBConfig struct {
	FilePath          string
	Type              string
	BatchDelaySeconds int
	MaxBatchSize      int
	MaxOpenFiles      int
}

DBConfig will map the database configuration

type DbLookupExtensionsConfig added in v1.1.1

type DbLookupExtensionsConfig struct {
	Enabled                            bool
	MiniblocksMetadataStorageConfig    StorageConfig
	MiniblockHashByTxHashStorageConfig StorageConfig
	EpochByHashStorageConfig           StorageConfig
	ResultsHashesByTxHashStorageConfig StorageConfig
}

DbLookupExtensionsConfig holds the configuration for the db lookup extensions

type DebugConfig added in v1.0.110

type DebugConfig struct {
	InterceptorResolver InterceptorResolverDebugConfig
	Antiflood           AntifloodDebugConfig
	ShuffleOut          ShuffleOutDebugConfig
}

DebugConfig will hold debugging configuration

type DelegationManagerSystemSCConfig added in v1.1.15

type DelegationManagerSystemSCConfig struct {
	MinCreationDeposit  string
	MinStakeAmount      string
	ConfigChangeAddress string
}

DelegationManagerSystemSCConfig defines a set of constants to initialize the delegation manager system smart contract

type DelegationSystemSCConfig added in v1.1.15

type DelegationSystemSCConfig struct {
	MinServiceFee uint64
	MaxServiceFee uint64
}

DelegationSystemSCConfig defines a set of constants to initialize the delegation system smart contract

type ESDTSystemSCConfig added in v1.0.114

type ESDTSystemSCConfig struct {
	BaseIssuingCost string
	OwnerAddress    string
}

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

type ElasticSearchConfig struct {
	Enabled          bool
	IndexerCacheSize int
	URL              string
	UseKibana        bool
	Username         string
	Password         string
	EnabledIndexes   []string
}

ElasticSearchConfig will hold the configuration for the elastic search

type EnableEpochs added in v1.2.0

type EnableEpochs struct {
	SCDeployEnableEpoch                    uint32
	BuiltInFunctionsEnableEpoch            uint32
	RelayedTransactionsEnableEpoch         uint32
	PenalizedTooMuchGasEnableEpoch         uint32
	SwitchJailWaitingEnableEpoch           uint32
	SwitchHysteresisForMinNodesEnableEpoch uint32
	BelowSignedThresholdEnableEpoch        uint32
	TransactionSignedWithTxHashEnableEpoch uint32
	MetaProtectionEnableEpoch              uint32
	AheadOfTimeGasUsageEnableEpoch         uint32
	GasPriceModifierEnableEpoch            uint32
	RepairCallbackEnableEpoch              uint32
	MaxNodesChangeEnableEpoch              []MaxNodesChangeConfig
	BlockGasAndFeesReCheckEnableEpoch      uint32
	StakingV2EnableEpoch                   uint32
	StakeEnableEpoch                       uint32
	DoubleKeyProtectionEnableEpoch         uint32
	ESDTEnableEpoch                        uint32
	GovernanceEnableEpoch                  uint32
	DelegationManagerEnableEpoch           uint32
	DelegationSmartContractEnableEpoch     uint32
	CorrectLastUnjailedEnableEpoch         uint32
	BalanceWaitingListsEnableEpoch         uint32
	ReturnDataToLastTransferEnableEpoch    uint32
	SenderInOutTransferEnableEpoch         uint32
	RelayedTransactionsV2EnableEpoch       uint32
	UnbondTokensV2EnableEpoch              uint32
	SaveJailedAlwaysEnableEpoch            uint32
	ValidatorToDelegationEnableEpoch       uint32
	ReDelegateBelowMinCheckEnableEpoch     uint32
	WaitingListFixEnableEpoch              uint32
	GovernanceSCEnableEpoch                uint32
}

EnableEpochs will hold the configuration for activation epochs

type EndpointsThrottlersConfig added in v1.0.137

type EndpointsThrottlersConfig struct {
	Endpoint         string
	MaxNumGoRoutines int32
}

EndpointsThrottlersConfig holds a pair of an endpoint and its maximum number of simultaneous go routines

type EpochConfig added in v1.2.0

type EpochConfig struct {
	EnableEpochs EnableEpochs
	GasSchedule  GasScheduleConfig
}

EpochConfig will hold epoch configurations

type EpochRewardSettings added in v1.1.56

type EpochRewardSettings struct {
	LeaderPercentage                 float64
	DeveloperPercentage              float64
	ProtocolSustainabilityPercentage float64
	ProtocolSustainabilityAddress    string
	TopUpGradientPoint               string
	TopUpFactor                      float64
	EpochEnable                      uint32
}

EpochRewardSettings holds the economics rewards settings for a specific epoch

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

type EvictionWaitingListConfig struct {
	Size uint
	DB   DBConfig
}

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

type FacadeConfig struct {
	RestApiInterface string
	PprofEnabled     bool
}

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
	MinGasPrice             string
	MinGasLimit             string
	GasPriceModifier        float64
}

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 GasScheduleByEpochs added in v1.1.12

type GasScheduleByEpochs struct {
	StartEpoch uint32
	FileName   string
}

GasScheduleByEpochs represents a gas schedule toml entry that will be applied from the provided epoch

type GasScheduleConfig added in v1.1.12

type GasScheduleConfig struct {
	GasScheduleByEpochs []GasScheduleByEpochs
}

GasScheduleConfig represents the versioning config area for the gas schedule toml

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
	ChainID                  string
	MinTransactionVersion    uint32
	GenesisString            string
	GenesisMaxNumberOfShards uint32
}

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 {
	V1                      GovernanceSystemSCConfigV1
	Active                  GovernanceSystemSCConfigActive
	FirstWhitelistedAddress string
}

GovernanceSystemSCConfig defines the set of constants to initialize the governance system smart contract

type GovernanceSystemSCConfigActive added in v1.2.1

type GovernanceSystemSCConfigActive struct {
	ProposalCost     string
	MinQuorum        string
	MinPassThreshold string
	MinVetoThreshold string
}

GovernanceSystemSCConfigActive defines the set of configuration values used by the governance

system smart contract once it activates

type GovernanceSystemSCConfigV1 added in v1.2.1

type GovernanceSystemSCConfigV1 struct {
	NumNodes         int64
	ProposalCost     string
	MinQuorum        int32
	MinPassThreshold int32
	MinVetoThreshold int32
}

GovernanceSystemSCConfigV1 holds the initial set of values that were used to initialise the

governance system smart contract at genesis time

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

type HeadersPoolConfig struct {
	MaxHeadersPerShard            int
	NumElementsToRemoveOnEviction int
}

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 ImportDbConfig added in v1.2.0

type ImportDbConfig struct {
	IsImportDBMode                bool
	ImportDBStartInEpoch          uint32
	ImportDBTargetShardID         uint32
	ImportDBWorkingDir            string
	ImportDbNoSigCheckFlag        bool
	ImportDbSaveTrieEpochRootHash bool
}

ImportDbConfig will hold the import-db parameters

type IncreaseFactorConfig added in v1.0.123

type IncreaseFactorConfig struct {
	Threshold uint32
	Factor    float32
}

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
	Type                             string
	RefreshIntervalInSec             uint32
	ProtocolID                       string
	InitialPeerList                  []string
	BucketSize                       uint32
	RoutingTableRefreshIntervalInSec uint32
}

KadDhtPeerDiscoveryConfig will hold the kad-dht discovery config settings

type LogsConfig added in v1.1.1

type LogsConfig struct {
	LogFileLifeSpanInSec int
}

LogsConfig will hold settings related to the logging sub-system

type MarshalizerConfig

type MarshalizerConfig struct {
	Type string
	//TODO check if we still need this
	SizeCheckDelta uint32
}

MarshalizerConfig holds the marshalizer related configuration

type MaxNodesChangeConfig added in v1.1.15

type MaxNodesChangeConfig struct {
	EpochEnable            uint32
	MaxNumNodes            uint32
	NodesToShufflePerShard uint32
}

MaxNodesChangeConfig defines a config change tuple, with a maximum number enabled in a certain epoch number

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

type NodeConfig struct {
	Port                       string
	Seed                       string
	MaximumExpectedPeerCount   uint64
	ThresholdMinConnectedPeers uint32
}

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
	RedundancyLevel            int64
}

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
	Type            string
	SignatureLength int
}

PubkeyConfig will map the public key configuration

type QueryVirtualMachineConfig added in v1.1.18

type QueryVirtualMachineConfig struct {
	VirtualMachineConfig
	NumConcurrentVMs int
}

QueryVirtualMachineConfig holds the configuration for the virtual machine(s) used in query process

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

type RatingValue struct {
	Name  string
	Value int32
}

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 ResolverConfig added in v1.2.0

type ResolverConfig struct {
	NumCrossShardPeers  uint32
	NumIntraShardPeers  uint32
	NumFullHistoryPeers uint32
}

ResolverConfig represents the config options to be used when setting up the resolver instances

type ResourceStatsConfig

type ResourceStatsConfig struct {
	Enabled              bool
	RefreshIntervalInSec int
}

ResourceStatsConfig will hold all resource stats settings

type RewardsSettings

type RewardsSettings struct {
	RewardsConfigByEpoch []EpochRewardSettings
}

RewardsSettings holds the economics rewards config changes by epoch

type RouteConfig added in v1.0.114

type RouteConfig struct {
	Name string
	Open bool
}

RouteConfig holds the configuration for a single route

type SelectionChance

type SelectionChance struct {
	MaxThreshold  uint32
	ChancePercent uint32
}

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         uint32
	MaxIntraShardValidators uint32
	MaxCrossShardValidators uint32
	MaxIntraShardObservers  uint32
	MaxCrossShardObservers  uint32
	MaxSeeders              uint32
	MaxFullHistoryObservers uint32
	Type                    string
}

ShardingConfig will hold the network sharding config settings

type ShuffleOutDebugConfig added in v1.2.0

type ShuffleOutDebugConfig struct {
	CallGCWhenShuffleOut    bool
	ExtraPrintsOnShuffleOut bool
	DoProfileOnShuffleOut   bool
}

ShuffleOutDebugConfig will hold the shuffle out debug configuration

type SoftwareVersionConfig added in v1.0.128

type SoftwareVersionConfig struct {
	StableTagLocation        string
	PollingIntervalInMinutes int
}

SoftwareVersionConfig will hold the configuration for software version checker

type StakingSystemSCConfig added in v1.0.147

type StakingSystemSCConfig struct {
	GenesisNodePrice                     string
	MinStakeValue                        string
	MinUnstakeTokensValue                string
	UnJailValue                          string
	MinStepValue                         string
	UnBondPeriod                         uint64
	UnBondPeriodInEpochs                 uint32
	NumRoundsWithoutBleed                uint64
	MaximumPercentageToBleed             float64
	BleedPercentagePerRound              float64
	MaxNumberOfNodesForStake             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
	UserStatePruningQueueSize   uint
	PeerStatePruningQueueSize   uint
}

StateTriesConfig will hold information about state tries

type StorageConfig

type StorageConfig struct {
	Cache CacheConfig
	DB    DBConfig
	Bloom BloomFilterConfig
}

StorageConfig will map the storage unit configuration

type StoragePruningConfig

type StoragePruningConfig struct {
	Enabled                        bool
	CleanOldEpochsData             bool
	NumEpochsToKeep                uint64
	NumActivePersisters            uint64
	FullArchive                    bool
	FullArchiveNumActivePersisters uint32
}

StoragePruningConfig will hold settings related to storage pruning

type SystemSmartContractsConfig added in v1.0.114

type SystemSmartContractsConfig struct {
	ESDTSystemSCConfig              ESDTSystemSCConfig
	GovernanceSystemSCConfig        GovernanceSystemSCConfig
	StakingSystemSCConfig           StakingSystemSCConfig
	DelegationManagerSystemSCConfig DelegationManagerSystemSCConfig
	DelegationSystemSCConfig        DelegationSystemSCConfig
}

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

type TopicMaxMessagesConfig struct {
	Topic             string
	NumMessagesPerSec uint32
}

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       uint32
	KeepSnapshots      bool
}

TrieStorageManagerConfig will hold config information about trie storage manager

type TrieSyncConfig added in v1.1.28

type TrieSyncConfig struct {
	NumConcurrentTrieSyncers  int
	MaxHardCapForMissingNodes int
	TrieSyncerVersion         int
}

TrieSyncConfig represents the trie synchronization configuration area

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 string type configuration

type ValidatorStatisticsConfig added in v1.0.120

type ValidatorStatisticsConfig struct {
	CacheRefreshIntervalInSec uint32
}

ValidatorStatisticsConfig will hold validator statistics specific settings

type VersionByEpochs added in v1.1.1

type VersionByEpochs struct {
	StartEpoch uint32
	Version    string
}

VersionByEpochs represents a version entry that will be applied between the provided epochs

type VersionsConfig added in v1.1.1

type VersionsConfig struct {
	DefaultVersion   string
	VersionsByEpochs []VersionByEpochs
	Cache            CacheConfig
}

VersionsConfig represents the versioning config area

type VirtualMachineConfig added in v0.0.5

type VirtualMachineConfig struct {
	ArwenVersions []ArwenVersionByEpoch
}

VirtualMachineConfig holds configuration for a Virtual Machine service

type VirtualMachineServicesConfig added in v1.1.5

type VirtualMachineServicesConfig struct {
	Execution VirtualMachineConfig
	Querying  QueryVirtualMachineConfig
}

VirtualMachineServicesConfig holds configuration for the Virtual Machine(s): both querying and execution services.

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

type YearSetting struct {
	Year             uint32
	MaximumInflation float64
}

YearSetting will hold the maximum inflation rate for year

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL