package
1.8.2
Repository: https://github.com/multiversx/mx-chain-go.git
Documentation: pkg.go.dev

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# Functions

AssignShardForPubKeyWhenNotSpecified will return the same shard ID when it is called with the same parameters This function fetched the last byte of the public key and based on a modulo operation it will return a shard ID.
CloseKeyValueHolderChan will close the channel if not nil.
ExtractTokenIDAndNonceFromTokenStorageKey will parse the token's storage key and extract the identifier and the nonce.
GetClosedUnbufferedChannel returns an instance of a 'chan struct{}' that is already closed.
GetNodeProcessingMode returns the node processing mode based on the provided config.
GetSkBytesFromP2pKey will read key file based on provided path.
IsContextDone will return true if the provided context signals it is done.
IsEmptyTrie returns true if the given root is for an empty trie.
LoadApiConfig returns a ApiRoutesConfig by reading the config file provided.
LoadEconomicsConfig returns a EconomicsConfig by reading the config file provided.
LoadEpochConfig returns an EpochConfig by reading from the provided config file.
LoadExternalConfig returns a ExternalConfig by reading the config file provided.
LoadGasScheduleConfig returns a map[string]uint64 of gas costs read from the provided config file.
LoadMainConfig returns a Config by reading the config file provided.
LoadP2PConfig returns a P2PConfig by reading the config file provided.
LoadPreferencesConfig returns a Preferences by reading the config file provided.
LoadRatingsConfig returns a RatingsConfig by reading the config file provided.
LoadRoundConfig returns a RoundConfig by reading from provided config file.
LoadSystemSmartContractsConfig returns a SystemSmartContractsConfig by reading the config file provided.
NewPidQueue returns a new instance of pid queue.
NewTimeoutHandler returns a new instance of the timeout handler.
ProcessDestinationShardAsObserver returns the shardID given the destination as observer string.
SuffixedMetric appends the suffix to the provided metric and returns it.
TrimSuffixFromValue returns the value without the suffix.

# Constants

ActiveDBKey is the key at which ActiveDBVal will be saved.
ActiveDBVal is the value that will be saved at ActiveDBKey.
Enable epoch flags definitions.
AdditionalScrForEachScCallOrSpecialTx specifies the additional number of smart contract results which should be considered by a node, when it includes sc calls or special txs in a miniblock.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
ApiOutputFormatJSON outport format returns struct directly, will be serialized into JSON by gin.
ApiOutputFormatProto outport format returns the bytes of the proto object.
AsyncCallbackGasLockField is the field name for the gas amount to be locked before executing the destination async call, to be put aside for the async callback.
AsyncCallStepField is the field name for the gas cost for any of the two steps required to execute an async call.
AuctionList represents the list of peers which don't participate in consensus yet, but will be selected based on their top up stake.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
BaseOperationCost represents the field name for base operation costs.
BaseOpsAPICost represents the field name of the SC API (EEI) gas costs.
Enable epoch flags definitions.
Enable epoch flags definitions.
BlockProcessingCutoffByEpoch represents the cutoff by epoch.
BlockProcessingCutoffByNonce represents the cutoff by nonce.
BlockProcessingCutoffByRound represents the cutoff by round.
BlockProcessingCutoffModePause represents the mode where the node will pause the processing at the given coordinates.
BlockProcessingCutoffModeProcessError represents the mode where the node will reprocess with error the block at the given coordinates.
BuiltInCost represents the field name for built-in operation costs.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
CombinedPeerType - represents the combination of two peerTypes.
CommitMaxTime represents max time accepted for a commit action, after which a warn message is displayed.
Enable epoch flags definitions.
ConnectionTopic represents the topic used when sending the new connection message data.
ConsensusOrder defines the order in which Consensus is notified of a start of epoch event.
ConsensusTopic is the topic used in consensus algorithm.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
DataTrie represents a data trie in which all the data related to an account is stored.
DefaultDBPath is the default path for nodes databases.
DefaultInterceptorsIdentifier represents the identifier that is used in conjunction with regular interceptors (that makes the node run properly).
DefaultLogProfileIdentifier represents the default log profile used when the logviewer/termui applications do not need to change the current logging profile.
DefaultResolversIdentifier represents the identifier that is used in conjunction with regular resolvers (that makes the node run properly).
DefaultStatsPath is the default path where the node stats are logged.
DefaultUnstakedEpoch represents the default epoch that is set for a validator that has not unstaked yet.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
DisabledShardIDAsObserver defines the uint32 identifier which tells that the node hasn't configured any preferred shard to start in as observer.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
EligibleList represents the list of peers who participate in consensus inside a shard.
EpochEnableSuffix represents the suffix for EpochEnable item in MaxNodesChangeEnableEpoch list.
EpochStartInterceptorsIdentifier represents the identifier that is used in the start-in-epoch process.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
ExtraDelayBetweenBroadcastMbsAndTxs represents the number of seconds to wait since miniblocks have been broadcast and the moment when theirs transactions would be broadcast too.
ExtraDelayForBroadcastBlockInfo represents the number of seconds to wait since a block has been broadcast and the moment when its components, like mini blocks and transactions, would be broadcast too.
ExtraDelayForRequestBlockInfo represents the number of seconds to wait since a block has been received and the moment when its components, like mini blocks and transactions, would be requested too if they are still missing.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
FullArchiveMetricSuffix is the suffix added to metrics specific for full archive network.
FullArchiveMode defines the node operation as a full archive mode.
Enable epoch flags definitions.
GenesisStorageSuffix defines the storage suffix used for genesis altered data.
GenesisTxSignatureString is the string used to generate genesis transaction signature as 128 hex characters.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
HardforkInterceptorsIdentifier represents the identifier that is used in the hardfork process.
HardforkResolversIdentifier represents the resolver that is used in the hardfork process.
HeartbeatV2Topic is the topic used for heartbeatV2 signaling.
HighestRoundFromBootStorage is the key for the highest round that is saved in storage.
ImportComplete signals that a node restart will be done because the import did complete.
ImportDb means that the node has started in the import-db mode.
InactiveList represents the list of peers who were taken out because they were leaving.
Enable epoch flags definitions.
IndexerOrder defines the order in which indexer is notified of a start of epoch event.
InvalidMessageBlacklistDuration represents the time to keep a peer in the black list if it sends a message that does not follow the protocol: example not useing the same marshaler as the other peers.
InvalidSigningBlacklistDuration defines the time to keep a peer id in blacklist if it signs a message with invalid signature.
Enable epoch flags definitions.
JailedList represents the list of peers who have stake but are in jail.
Enable epoch flags definitions.
LeavingList represents the list of peers who were taken out of eligible and waiting because of rating.
MainTrie represents the main trie in which all the accounts and SC code are stored.
Enable epoch flags definitions.
Enable epoch flags definitions.
256KB bulks.
MaxIndexOfTxInMiniBlock defines the maximum index of a tx inside one mini block.
MaxNumNodesSuffix represents the suffix for MaxNumNodes item in MaxNodesChangeEnableEpoch list.
MaxPerTransaction represents the field name of max counts per transaction in block chain hook.
MaxRoundsWithoutCommittedStartInEpochBlock defines the maximum rounds to wait for start in epoch block to be committed, before a special action to be applied.
MaxSoftwareVersionLengthInBytes represents the maximum length for the software version to be saved in block header.
MaxTxNonceDeltaAllowed specifies the maximum difference between an account's nonce and a received transaction's nonce in order to mark the transaction as valid.
MaxTxsToRequest specifies the maximum number of txs to request.
MaxWaitingTimeToReceiveRequestedItem represents the maximum waiting time in seconds needed to receive the requested items.
MetachainShardId will be used to identify a shard ID as metachain.
MetachainShardName is the string identifier of the metachain shard.
MetaChainSystemSCsCost represents the field name for metachain system smart contract operation costs.
TODO - move this to mx-chain-core-go and change wherever we use the string value.
Enable epoch flags definitions.
Enable epoch flags definitions.
MetricAccountsSnapshotInProgress is the metric that outputs the status of the accounts' snapshot, if it's in progress or not.
MetricAccountsSnapshotNumNodes is the metric that outputs the number of trie nodes written for accounts after snapshot.
MetricAdaptivity represents a boolean to determine if adaptivity will be enabled or not.
MetricAddFailedRelayedTxToInvalidMBsDisableEpoch represents the epoch when add failed relayed tx to invalid miniblocks functionality is enabled.
MetricAddTokensToDelegationEnableEpoch represents the epoch when add tokens to delegation.
MetricAheadOfTimeGasUsageEnableEpoch represents the epoch when the cost of smart contract prepare changes from compiler per byte to ahead of time prepare per byte.
MetricAlwaysMergeContextsInEEIEnableEpoch represents the epoch when always merge contexts in EEI fix is enabled.
MetricAlwaysSaveTokenMetaDataEnableEpoch represents the epoch when always save token metadata functionality is enabled.
MetricAppVersion is the metric for the current app version.
MetricAreVMQueriesReady will hold the string representation of the boolean that indicated if the node is ready to process VM queries.
MetricAutoBalanceDataTriesEnableEpoch represents the epoch when auto balance data tries feature is enabled.
MetricBackwardCompSaveKeyValueEnableEpoch represents the epoch when backward compatibility save key valu is enabled.
MetricBalanceWaitingListsEnableEpoch represents the epoch when the balance waiting lists on shards fix is applied.
MetricBelowSignedThresholdEnableEpoch represents the epoch when the change for computing rating for validators below signed rating is enabled.
MetricBlockGasAndFreeRecheckEnableEpoch represents the epoch when gas and fees used in each created or processed block are re-checked.
MetricBlockTimestamp is the metric for monitoring the timestamp of the last synchronized block.
MetricBuiltInFunctionsEnableEpoch represents the epoch when the built-in functions is enabled.
MetricChainId is the metric that specifies current chain id.
MetricChangeOwnerAddressCrossShardThroughSCEnableEpoch represents the epoch when change owner address cross shard through SC functionality is enabled.
MetricChangeUsernameEnableEpoch represents the epoch when change username functionality is enabled.
MetricCheckCorrectTokenIDForTransferRoleEnableEpoch represents the epoch when check correct tokenID for transfer role fix is enabled.
MetricCheckExecuteOnReadOnlyEnableEpoch represents the epoch when check execute on read only fix is enabled.
MetricCheckFunctionArgumentEnableEpoch represents the epoch when check function argument functionality is enabled.
MetricCleanupAuctionOnLowWaitingListEnableEpoch represents the epoch when cleanup auction on low waiting list fix is enabled.
MetricCleanUpInformativeSCRsEnableEpoch represents the epoch when cleanup informative scrs functionality is enabled.
MetricComputeRewardCheckpointEnableEpoch represents the epoch when compute reward checkpoint feature is enabled.
MetricConnectedNodes is the metric for monitoring total connected nodes on the network.
MetricConsensusGroupSize is the metric for consensus group size for the current shard/meta.
MetricConsensusRoundState is the metric for consensus round state for a block.
MetricConsensusState is the metric for consensus state of node proposer,participant or not consensus group.
MetricConsistentTokensValuesLengthCheckEnableEpoch represents the epoch when consistent tokens values length check is enabled.
MetricCorrectFirstQueuedEpoch represents the epoch when correct first queued fix is enabled.
MetricCorrectJailedNotUnstakedEmptyQueueEpoch represents the epoch when correct jailed not unstacked meptry queue fix is enabled.
MetricCorrectLastUnjailedEnableEpoch represents the epoch when the correction on the last unjailed node is applied.
MetricCountAcceptedBlocks is the metric for monitoring number of blocks that was accepted proposed by a node.
MetricCountConsensus is the metric for monitoring number of rounds when a node was in consensus group.
MetricCountConsensusAcceptedBlocks is the metric for monitoring number of blocks accepted when the node was in consensus group.
MetricCountLeader is the metric for monitoring number of rounds when a node was leader.
MetricCpuLoadPercent is the metric for monitoring CPU load [%].
MetricCreatedProposedBlock is the metric that specifies the percent of the block subround used for header and body creation (0 meaning that the block was created in no-time and 100 meaning that the block creation used all the subround spare duration).
MetricCreateNFTThroughExecByCallerEnableEpoch represents the epoch when create nft through exec by caller functionality is enabled.
MetricCrossCheckBlockHeight is the metric that store cross block height.
MetricCrossCheckBlockHeightMeta is the metric that store metachain cross block height.
MetricCryptoOpcodesV2EnableEpoch represents the epoch when crypto opcodes v2 feature is enabled.
MetricCurrentBlockHash is the metric that stores the current block hash.
MetricCurrentRandomnessOnSortingEnableEpoch represents the epoch when current randomness on sorting functionality is enabled.
MetricCurrentRound is the metric for monitoring the current round of a node.
MetricCurrentRoundTimestamp is the metric that stores current round timestamp.
MetricDelegationManagerEnableEpoch represents the epoch when the delegation manager is enabled.
MetricDelegationSmartContractEnableEpoch represents the epoch when delegation smart contract is enabled.
MetricDeleteDelegatorAfterClaimRewardsEnableEpoch represents the epoch when delete delegator after claim rewards fix is enabled.
MetricDenomination is the metric for exposing the denomination.
MetricDeterministicSortOnValidatorsInfoEnableEpoch represents the epoch when deterministic sort on validators info functionality is enabled.
MetricDevRewardsInEpoch holds the developers' rewards value for the last epoch.
MetricDisableExecByCallerEnableEpoch represents the epoch when disable exec by caller functionality is enabled.
MetricDoNotReturnOldBlockInBlockchainHookEnableEpoch represents the epoch when do not return old block in blockchain hook fix is enabled.
MetricDoubleKeyProtectionEnableEpoch represents the epoch when double key protection is enabled.
MetricDynamicESDTEnableEpoch represents the epoch when dynamic ESDT feature is enabled.
MetricDynamicGasCostForDataTrieStorageLoadEnableEpoch represents the epoch when dynamic gas cost for data tries storage load functionality is enabled.
MetricEGLDInMultiTransferEnableEpoch represents the epoch when EGLD in multi transfer feature is enabled.
MetricEpochEnable represents the epoch when the max nodes change configuration is applied.
MetricEpochForEconomicsData holds the epoch for which economics data are computed.
MetricEpochNumber is the metric for the number of epoch.
MetricEsdtEnableEpoch represents the epoch when ESDT is enabled.
MetricESDTMetadataContinuousCleanupEnableEpoch represents the epoch when esdt metadata continuous clenaup functionality is enabled.
MetricESDTMultiTransferEnableEpoch represents the epoch when the ESDT multi transfer feature is enabled.
MetricESDTNFTCreateOnMultiShardEnableEpoch represents the epoch when esdt nft create on multi shard is enabled.
MetricESDTRegisterAndSetAllRolesEnableEpoch represents the epoch when esdt register and set all roles functionality is enabled.
MetricESDTTransferRoleEnableEpoch represents the epoch when the ESDT transfer role feature is enabled.
MetricExtraGasLimitGuardedTx specifies the extra gas limit required for guarded transactions.
MetricFailExecutionOnEveryAPIErrorEnableEpoch represents the epoch when fail execution on every api error functionality is enabled.
MetricFixAsyncCallBackArgsListEnableEpoch represents the epoch when fix async callback args list is enabled.
MetricFixDelegationChangeOwnerOnAccountEnableEpoch represents the epoch when fix delegation change owner on account is enabled.
MetricFixGasRemainingForSaveKeyValueBuiltinFunctionEnableEpoch represents the epoch when fix gas remaining for save key value builin function is enabled.
MetricFixOldTokenLiquidityEnableEpoch represents the epoch when fix old token liquidity is enabled.
MetricFixOOGReturnCodeEnableEpoch represents the epoch when OOG return code fix is enabled.
MetricFixRelayedBaseCostEnableEpoch represents the epoch when the fix for relayed base cost is enabled.
MetricFixRelayedMoveBalanceToNonPayableSCEnableEpoch represents the epoch when the fix for relayed move balance to non-payable sc is enabled.
MetricFrontRunningProtectionEnableEpoch represents the epoch when front running protection feature is enabled.
MetricGasPerDataByte is the metric that specifies the required gas for a data byte.
MetricGasPriceModifier is the metric that specifies the gas price modifier.
MetricGasPriceModifierEnableEpoch represents the epoch when the gas price modifier in fee computation is enabled.
MetricGatewayMetricsEndpoint is the metric that specifies gateway endpoint.
MetricGlobalMintBurnDisableEpoch represents the epoch when the global mint and burn feature is disabled.
MetricGovernanceEnableEpoch represents the epoch when governance is enabled.
MetricHeaderSize is the metric that stores the current block size.
MetricHighestFinalBlock is the metric for the nonce of the highest final block.
MetricHysteresis represents the hysteresis threshold.
MetricIncrementSCRNonceInMultiTransferEnableEpoch represents the epoch when the fix for multi transfer SCR is enabled.
MetricInflation holds the inflation value for the last epoch.
MetricIsPayableBySCEnableEpoch represents the epoch when is payable by SC feature is enabled.
MetricIsSyncing is the metric for monitoring if a node is syncing.
MetricKeepExecOrderOnCreatedSCRsEnableEpoch represents the epoch when keep exec order on created scs fix is enabled.
MetricLastAccountsSnapshotDurationSec is the metric that outputs the duration in seconds of the last accounts db snapshot.
MetricLastPeersSnapshotDurationSec is the metric that outputs the duration in seconds of the last peers db snapshot.
MetricLatestTagSoftwareVersion is the metric that stores the latest tag software version.
MetricLeaderPercentage is the metric for leader rewards percentage.
MetricLiveValidatorNodes is the metric for the number of live validators on the network.
MetricManagedCryptoAPIsEnableEpoch represents the epoch when managed cypto apis functionality is enabled.
MetricMaxBlockchainHookCountersEnableEpoch represents the epoch when max blockchain hook counters functionality is enabled.
MetricMaxGasPerTransaction is the metric that specifies the maximum gas limit for a transaction.
MetricMaxNodesChangeEnableEpoch holds configuration for changing the maximum number of nodes and the enabling epoch.
MetricMaxNumNodes represents the maximum number of nodes than can be enabled in a max nodes change configuration setup.
MetricMemHeapInUse is a metric for monitoring the memory ("heap in use").
MetricMemLoadPercent is the metric for monitoring memory load [%].
MetricMemStackInUse is a metric for monitoring the memory ("stack in use").
MetricMemTotal is the metric for monitoring total memory bytes.
MetricMemUsedGolang is a metric for monitoring the memory ("total").
MetricMemUsedSystem is a metric for monitoring the memory ("sys mem").
MetricMetaConsensusGroupSize is the metric for the metachain consensus group size.
MetricMetaESDTSetEnableEpoch represents the epoch when meta esdt set is enabled.
MetricMetaProtectionEnableEpoch represents the epoch when the transactions to the metachain are checked to have enough gas.
MetricMigrateDataTrieEnableEpoch represents the epoch when migrate data trie feature is enabled.
MetricMinGasLimit is the metric that specifies the minimum gas limit.
MetricMinGasPrice is the metric that specifies min gas price.
MetricMiniBlockPartialExecutionEnableEpoch represents the epoch when miniblock partial execution feature is enabled.
MetricMiniBlocksSize is the metric that stores the current block size.
MetricMinTransactionVersion is the metric that specifies the minimum transaction version.
MetricMultiClaimOnDelegationEnableEpoch represents the epoch when multi claim on delegation functionality is enabled.
MetricMultiESDTNFTTransferAndExecuteByUserEnableEpoch represents the epoch when enshrined sovereign opcodes are enabled.
MetricMultiESDTTransferFixOnCallBackOnEnableEpoch represents the epoch when multi esdt transfer fix on callback on is enabled.
MetricNetworkRecvBps is the metric for monitoring network received bytes per second.
MetricNetworkRecvBpsPeak is the metric for monitoring network received peak bytes per second.
MetricNetworkRecvBytesInCurrentEpochPerHost is the metric for monitoring network received bytes in current epoch per host.
MetricNetworkRecvPercent is the metric for monitoring network receive load [%].
MetricNetworkSendBytesInCurrentEpochPerHost is the metric for monitoring network send bytes in current epoch per host.
MetricNetworkSentBps is the metric for monitoring network sent bytes per second.
MetricNetworkSentBpsPeak is the metric for monitoring network sent peak bytes per second.
MetricNetworkSentPercent is the metric for monitoring network sent load [%].
MetricNFTStopCreateEnableEpoch represents the epoch when NFT stop create functionality is enabled.
MetricNodeDisplayName is the metric that stores the name of the node.
MetricNodesToShufflePerShard represents the nodes to be shuffled per shard.
MetricNodeType is the metric for monitoring the type of the node.
MetricNonce is the metric for monitoring the nonce of a node.
MetricNonceAtEpochStart is the metric for storing the first nonce of the current epoch.
MetricNoncesPassedInCurrentEpoch is the metric that tells the number of nonces passed in current epoch.
MetricNumConnectedPeers is the metric for monitoring the number of connected peers.
MetricNumConnectedPeersClassification is the metric for monitoring the number of connected peers split on the connection type.
MetricNumIntraShardValidatorNodes is the metric for the number of intra-shard validators.
MetricNumMetachainNodes is the metric which holds the number of nodes in metachain.
MetricNumMiniBlocks is the metric for number of miniblocks in a block.
MetricNumNodesPerShard is the metric which holds the number of nodes in a shard.
MetricNumProcessedTxs is the metric that stores the number of transactions processed.
MetricNumShardHeadersFromPool is the metric that stores number of shard header from pool.
MetricNumShardHeadersProcessed is the metric that stores number of shard header processed.
MetricNumShardsWithoutMetachain is the metric for monitoring the number of shards (excluding meta).
MetricNumTimesInForkChoice is the metric that counts how many times a node was in fork choice.
MetricNumTxInBlock is the metric for the number of transactions in the proposed block.
MetricNumValidators is the metric for the number of validators.
MetricOptimizeGasUsedInCrossMiniBlocksEnableEpoch represents the epoch when optimize gas used in cross miniblocks is enabled.
MetricOptimizeNFTStoreEnableEpoch represents the epoch when optimize nft store feature is enabled.
MetricP2PCrossShardObservers is the metric that outputs the cross-shard connected observers.
MetricP2PCrossShardValidators is the metric that outputs the cross-shard connected validators.
MetricP2PIntraShardObservers is the metric that outputs the intra-shard connected observers.
MetricP2PIntraShardValidators is the metric that outputs the intra-shard connected validators.
MetricP2PNumConnectedPeersClassification is the metric for monitoring the number of connected peers split on the connection type.
MetricP2PNumReceiverPeers represents the number of connected peer sent messages to the current peer (and have been received by the current peer) in the amount of time.
MetricP2PPeakNumReceiverPeers represents the peak number of connected peer sent messages to the current peer (and have been received by the current peer) in the amount of time.
MetricP2PPeakPeerNumProcessedMessages represents the peak maximum number of processed messages in the amount of time counted on a connected peer.
MetricP2PPeakPeerNumReceivedMessages represents the peak maximum number of received messages in the amount of time counted on a connected peer.
MetricP2PPeakPeerSizeProcessedMessages represents the peak maximum size of processed data (sum of all messages) in the amount of time counted on a connected peer.
MetricP2PPeakPeerSizeReceivedMessages represents the peak maximum size of received data (sum of all messages) in the amount of time counted on a connected peer.
MetricP2PPeerInfo is the metric for the node's p2p info.
MetricP2PPeerNumProcessedMessages represents the current maximum number of processed messages in the amount of time counted on a connected peer.
MetricP2PPeerNumReceivedMessages represents the current maximum number of received messages in the amount of time counted on a connected peer.
MetricP2PPeerSizeProcessedMessages represents the current maximum size of processed data (sum of all messages) in the amount of time counted on a connected peer.
MetricP2PPeerSizeReceivedMessages represents the current maximum size of received data (sum of all messages) in the amount of time counted on a connected peer.
MetricP2PUnknownPeers is the metric that outputs the unknown-shard connected peers.
MetricPeersSnapshotInProgress is the metric that outputs the status of the peers' snapshot, if it's in progress or not.
MetricPeerSubType is the metric which tells the peer's subtype (regular observer or full history observer).
MetricPeerType is the metric which tells the peer's type (in eligible list, in waiting list, or observer).
MetricPenalizedTooMuchGasEnableEpoch represents the epoch when the penalization for using too much gas is enabled.
MetricProbableHighestNonce is the metric for monitoring the max speculative nonce received by the node by listening on the network.
MetricProcessedProposedBlock is the metric that specify the percent of the block subround used for header and body processing (0 meaning that the block was processed in no-time and 100 meaning that the block processing used all the subround spare duration).
MetricPublicKeyBlockSign is the metric for monitoring public key of a node used in block signing.
MetricRatingsGeneralMaxRating represents the maximum rating limit.
MetricRatingsGeneralMinRating represents the minimum rating limit.
MetricRatingsGeneralSelectionChances represents the selection chances thresholds.
MetricRatingsGeneralSignedBlocksThreshold represents the signed blocks threshold.
MetricRatingsGeneralStartRating represents the starting rating used by the rater.
MetricRatingsMetaChainConsecutiveMissedBlocksPenalty represents the consecutive missed blocks penalty.
MetricRatingsMetaChainHoursToMaxRatingFromStartRating represents the hours to max rating from start rating.
MetricRatingsMetaChainProposerDecreaseFactor represents the proposer decrease factor.
MetricRatingsMetaChainProposerValidatorImportance represents the proposer validator importance index.
MetricRatingsMetaChainValidatorDecreaseFactor represents the validator decrease factor.
MetricRatingsPeerHonestyBadPeerThreshold represents the peer honesty bad peer threshold.
MetricRatingsPeerHonestyDecayCoefficient represents the peer honesty decay coefficient.
MetricRatingsPeerHonestyDecayUpdateIntervalInSeconds represents the decat update interval in seconds.
MetricRatingsPeerHonestyMaxScore represents the peer honesty max score allowed.
MetricRatingsPeerHonestyMinScore represents the peer honesty min score.
MetricRatingsPeerHonestyUnitValue represents the peer honesty unit value.
MetricRatingsShardChainConsecutiveMissedBlocksPenalty represents the consecutive missed block penalty.
MetricRatingsShardChainHoursToMaxRatingFromStartRating represents the hours to max rating from start rating.
MetricRatingsShardChainProposerDecreaseFactor represents the proposer decrease factor.
MetricRatingsShardChainProposerValidatorImportance represents the proposer validator importance index.
MetricRatingsShardChainValidatorDecreaseFactor represents the validator decrease factor.
MetricReceivedProposedBlock is the metric that specifies the moment in the round when the received block has reached the current node.
MetricReDelegateBelowMinCheckEnableEpoch represents the epoch when the re-delegation below minimum value fix is applied.
MetricRedundancyIsMainActive is the metric that specifies data about the redundancy main machine.
MetricRedundancyLevel is the metric that specifies the redundancy level of the current node.
MetricRedundancyStepInReason is the metric that specifies why the back-up machine stepped in.
MetricRefactorContextEnableEpoch represents the epoch when refactor context functionality is enabled.
MetricRefactorPeersMiniBlocksEnableEpoch represents the epoch when refactor peers miniblock feature is enabled.
MetricRelayedNonceFixEnableEpoch represents the epoch when relayed nonce fix is enabled.
MetricRelayedTransactionsEnableEpoch represents the epoch when the relayed transactions is enabled.
MetricRelayedTransactionsV2EnableEpoch represents the epoch when the relayed transactions v2 is enabled.
MetricRelayedTransactionsV3EnableEpoch represents the epoch when the relayed transactions v3 is enabled.
MetricRemoveNonUpdatedStorageEnableEpoch represents the epoch when remove non updated storage fix is enabled.
MetricRepairCallbackEnableEpoch represents the epoch when the callback repair is activated for smart contract results.
MetricReturnDataToLastTransferEnableEpoch represents the epoch when the return data to last transfer is applied.
MetricRewardsTopUpGradientPoint is the metric that specifies the rewards top up gradient point.
MetricRoundAtEpochStart is the metric for storing the first round of the current epoch.
MetricRoundDuration is the metric that specifies the round duration in milliseconds.
MetricRoundsPassedInCurrentEpoch is the metric that tells the number of rounds passed in current epoch.
MetricRoundsPerEpoch is the metric that tells the number of rounds in an epoch.
MetricRoundTime is the metric for round time in seconds.
MetricRuntimeCodeSizeFixEnableEpoch represents the epoch when runtime code size fix is enabled.
MetricRuntimeMemStoreLimitEnableEpoch represents the epoch when runtime mem store limit functionality is enabled.
MetricSaveJailedAlwaysEnableEpoch represents the epoch the save jailed fix is applied.
MetricScDeployEnableEpoch represents the epoch when the deployment of smart contracts is enabled.
MetricScheduledMiniBlocksEnableEpoch represents the epoch when the scheduled miniblocks feature is enabled.
MetricSCProcessorV2EnableEpoch represents the epoch when SC processor V2 feature is enabled.
MetricSCRSizeInvariantCheckEnableEpoch represents the epoch when scr size invariant check is enabled.
MetricSCRSizeInvariantOnBuiltInResultEnableEpoch represents the epoch when scr size invariant on builtin result functionality is enabled.
MetricSelectionChancesChancePercent represents the chance percentage for a selection chances metric.
MetricSelectionChancesMaxThreshold represents the max threshold for a selection chances item.
MetricSenderInOutTransferEnableEpoch represents the epoch when the sender in out transfer is applied.
MetricSetGuardianEnableEpoch represents the epoch when the guardian feature is enabled.
MetricSetScToScLogEventEnableEpoch represents the epoch when the sc to sc log event feature is enabled.
MetricSetSenderInEeiOutputTransferEnableEpoch represents the epoch when set sender in eei output transfer functionality is enabled.
MetricShardConsensusGroupSize is the metric for the shard consensus group size.
MetricShardId is the metric for monitoring shard id of a node.
MetricStakeEnableEpoch represents the epoch when staking is enabled.
MetricStakeLimitsEnableEpoch represents the epoch when stake limits functionality is enabled.
MetricStakingV2EnableEpoch represents the epoch when staking v2 is enabled.
MetricStakingV4Step1EnableEpoch represents the epoch when staking v4 step 1 feature is enabled.
MetricStakingV4Step2EnableEpoch represents the epoch when staking v4 step 2 feature is enabled.
MetricStakingV4Step3EnableEpoch represents the epoch when staking v4 step 3 feature is enabled.
MetricStartTime is the metric that specifies the genesis start time.
MetricStopDecreasingValidatorRatingWhenStuckEnableEpoch represents the epoch when stop decreaing validator rating when stuck functionality is enabled.
MetricStorageAPICostOptimizationEnableEpoch represents the epoch when storage api cost optimization feature is enabled.
MetricSwitchHysteresisForMinNodesEnableEpoch represents the epoch when the system smart contract changes its config to consider also (minimum) hysteresis nodes for the minimum number of nodes.
MetricSwitchJailWaitingEnableEpoch represents the epoch when the system smart contract processing at end of epoch is enabled.
MetricSynchronizedRound is the metric for monitoring the synchronized round of a node.
MetricTopUpFactor is the metric that specifies the top-up factor.
MetricTopUpValue holds the total top up value.
MetricTotalBaseStakedValue holds the total base staked value.
MetricTotalFees holds the total fees value for the last epoch.
MetricTotalSupply holds the total supply value for the last epoch.
MetricTransactionSignedWithTxHashEnableEpoch represents the epoch when the node will also accept transactions that are signed with the hash of transaction.
MetricTransformToMultiShardCreateEnableEpoch represents the epoch when transform to multi shard create functionality is enabled.
MetricTrieSyncNumProcessedNodes is the metric that outputs the number of trie nodes processed for accounts during trie sync.
MetricTrieSyncNumReceivedBytes is the metric that outputs the number of bytes received for accounts during trie sync.
MetricTxPoolLoad is the metric for monitoring number of transactions from pool of a node.
MetricUnbondTokensV2EnableEpoch represents the epoch when the unbond tokens v2 is applied.
MetricValidatorToDelegationEnableEpoch represents the epoch when the validator to delegation feature (staking v3.5) is enabled.
MetricValueNA represents the value to be used when a metric is not available/applicable.
MetricWipeSingleNFTLiquidityDecreaseEnableEpoch represents the epoch when wipe single NFT liquidity decrease functionality is enabled.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
NetStatisticsOrder defines the order in which netStatistic component is notified of a start of epoch event.
NetworkShardingOrder defines the order in which the network sharding subsystem is notified of a start of epoch event.
NewList represents the list of peers who have stake and are pending to become eligible.
Enable epoch flags definitions.
NodesCoordinatorOrder defines the order in which NodesCoordinator is notified of a start of epoch event.
NodesCoordinatorRegistryKeyPrefix is the key prefix to save epoch start registry to storage.
NodesSetupJsonFileName specifies the name of the json file which contains the setup of the nodes.
NodesToShufflePerShardSuffix represents the suffix for NodesToShufflePerShard item in MaxNodesChangeEnableEpoch list.
Normal means that the node has started in the normal processing mode.
NormalOperation defines the normal mode operation: either seeder, observer or validator.
NotSetDestinationShardID represents the shardIdString when the destinationShardId is not set in the prefs.
NsNotCalculated defines ID of a state which is not calculated.
NsNotSynchronized defines ID of a state of not synchronized.
NsSynchronized defines ID of a state of synchronized.
ObserverList represents the list of peers who don't participate in consensus but will join the next epoch.
OldDatabaseCleanOrder defines the order in which oldDatabaseCleaner component is notified of a start of epoch event.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
PeerAuthenticationTopic is the topic used for peer authentication signaling.
Enable epoch flags definitions.
PublicKeyBlacklistDuration represents the time to keep a public key in the black list if it will degrade its rating to a minimum threshold due to improper messages.
PutInStorerMaxTime represents max time accepted for a put action, after which a warn message is displayed.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
RetrialIntervalForOutportDriver is the interval in which the outport driver should try to call the driver again.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
SelectedFromAuctionList represents the list of peers which have been selected from AuctionList based on their top up to be distributed on the WaitingList in the next epoch.
SelectionChancesChancePercentSuffix represents the SelectionChances suffix for ChancePercent.
SelectionChancesMaxThresholdSuffix represents the SelectionChances suffix for MaxThreshold.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
ShuffledOut signals that a restart is pending because the node was shuffled out.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
Enable epoch flags definitions.
StorerOrder defines the order of storers to be notified of a start of epoch event.
Enable epoch flags definitions.
Enable epoch flags definitions.
TemporaryPath is the default temporary path directory.
to consider syncing a very large trie node of 64MB at ~1MB/s.
TimeoutGettingTrieNodesInHardfork represents the maximum time allowed between 2 nodes fetches (and commits) during the hardfork process.
TimeToWaitForP2PBootstrap is the wait time for the P2P to bootstrap.
Enable epoch flags definitions.
TrieLeavesChannelDefaultCapacity represents the default value to be used as capacity for getting all trie leaves on a channel.
TrieLeavesChannelSyncCapacity represents the value to be used as capacity for getting main trie leaf nodes for trie sync.
TrieSyncedKey is the key at which TrieSyncedVal will be saved.
TrieSyncedVal is the value that will be saved at TrieSyncedKey.
TriggerRegistryInitialKeyPrefix is the key prefix to save initial data to storage.
TriggerRegistryKeyPrefix is the key prefix to save epoch start registry to storage.
Enable epoch flags definitions.
Enable epoch flags definitions.
UnVersionedAppString represents the default app version that indicate that the binary wasn't build by setting the appVersion flag.
Enable epoch flags definitions.
ValidatorInfoTopic is the topic used for validatorInfo signaling.
Enable epoch flags definitions.
Enable epoch flags definitions.
WaitingList represents the list of peers who don't participate in consensus but will join the next epoch.
Enable epoch flags definitions.
WrongConfiguration signals that the node has a malformed configuration and cannot continue processing.

# Variables

EmptyTrieHash returns the value with empty trie hash.
ErrInvalidTimeout signals that an invalid timeout period has been provided.
ErrNilStateSyncNotifierSubscriber signals that a nil state sync notifier subscriber has been provided.
ErrNilWasmChangeLocker signals that a nil wasm change locker has been provided.

# Structs

AlteredAccountsForBlockAPIResponse holds the altered accounts for a certain block.
AuctionListValidatorAPIResponse holds the data needed for an auction node validator for responding to API calls.
AuctionNode holds data needed for a node in auction to respond to API calls.
DelegationDataAPI will be used when requesting the genesis balances from API.
EpochStartDataAPI holds fields from the first block in a given epoch.
GetProofResponse is a struct that stores the response of a GetProof API request.
InitialAccountAPI represents the structure to be returned when requesting the genesis balances from API.
NonceGapApiResponse is a struct that holds a nonce gap from transactions pool From - first unknown nonce To - last unknown nonce.
Transaction is a struct that holds transaction fields to be returned when getting the transactions from pool.
TransactionsPoolAPIResponse is a struct that holds the data to be returned when getting the transaction pool from an API call.
TransactionsPoolForSenderApiResponse is a struct that holds the data to be returned when getting the transactions for a sender from an API call.
TransactionsPoolNonceGapsForSenderApiResponse is a struct that holds the data to be returned when getting the nonce gaps from transactions pool for a sender from an API call.
TrieIteratorChannels defines the channels that are being used when iterating the trie nodes.

# Interfaces

BaseStorer define the base methods needed for a storer.
BlockInfo provides a block information such as nonce, hash, roothash and so on.
BufferedErrChan is an interface that defines the methods for a buffered error channel.
DataTrieHandler is an interface that declares the methods used for dataTries.
EnableEpochsHandler is used to verify which flags are set in a specific epoch based on EnableEpochs config.
ExecutionOrderGetter defines the functionality of a component that can return the execution order of a block transactions.
GasScheduleNotifierAPI defines the behavior of the gas schedule notifier components that is used for api.
KeyBuilder is used for building trie keys as you traverse the trie.
Locker defines the operations used to lock different critical areas.
ManagedPeersHolder defines the operations of an entity that holds managed identities for a node.
ManagedPeersMonitor defines the operations of an entity that monitors the managed peers holder.
MerkleProofVerifier is used to verify merkle proofs.
MissingTrieNodesNotifier defines the operations of an entity that notifies about missing trie nodes.
PidQueueHandler defines the behavior of a queue of pids.
ProcessStatusHandler defines the behavior of a component able to hold the current status of the node and able to tell if the node is idle or processing/committing a block.
ReceiptsHolder holds receipts content (e.g.
RootHashHolder holds a rootHash and the corresponding epoch.
SizeSyncStatisticsHandler extends the SyncStatisticsHandler interface by allowing setting up the trie node size.
SnapshotDbHandler is used to keep track of how many references a snapshot db has.
SnapshotStatisticsHandler is used to measure different statistics for the trie snapshot.
StateStatisticsHandler defines the behaviour of a storage statistics handler.
StateSyncNotifierSubscriber defines the operations of an entity that subscribes to a missing trie nodes notifier.
StorageManager manages all trie storage operations.
StorageMarker is used to mark the given storer as synced and active.
Trie is an interface for Merkle Trees implementations.
TrieLeafParser is used to parse trie leaves.
TriesHolder is used to store multiple tries.
TriesStatisticsCollector is used to merge the statistics for multiple tries.
TrieStatisticsHandler is used to collect different statistics about a single trie.
TrieStats is used to collect the trie statistics for the given rootHash.
TrieStorageInteractor defines the methods used for interacting with the trie storage.
TxExecutionOrderHandler is used to collect and provide the order of transactions execution.

# Type aliases

ApiOutputFormat represents the format type returned by api.
BlockProcessingCutoffMode represents the type to be used to identify the mode of the block processing cutoff.
BlockProcessingCutoffTrigger represents the trigger of the cutoff potentially used in block processing.
ModifiedHashes is used to memorize all old hashes and new hashes from when a trie is committed.
NodeOperation defines the p2p node operation.
NodeProcessingMode represents the processing mode in which the node was started.
NodeState specifies what type of state a node could have.
PeerType represents the type of peer.
TrieType defines the type of the trie.