Documentation ¶
Index ¶
- Constants
- Variables
- func CheckNewCmBlockChainConfig() error
- func InitLocalConfig(cmd *cobra.Command) error
- func RefreshLogLevelsConfig() error
- func UpdateDebugConfig(pairs []*config.ConfigKeyValue) error
- type BirdsNestConfig
- type BlockHeightSerializeIntervalConfig
- type BlockchainConfig
- type CMConfig
- type ConsensusConfig
- type CuckooConfig
- type FilterExtensionConfig
- type RulesConfig
- type ShardingBirdsNestConfig
- type SnapshotSerializerConfig
- type TimedSerializeIntervalConfig
- type TxFilterConfig
Constants ¶
View Source
const ( DefaultRpcMaxSendMsgSize = 10 * 1024 * 1024 // 10 MiB DefaultRpcMaxRecvMsgSize = 10 * 1024 * 1024 // 10 MiB )
Variables ¶
View Source
var ( // FindNewBlockChainNotifyC is the chan for finding new block chain configs. FindNewBlockChainNotifyC = make(chan string) // ChainMakerConfig is the CMConfig instance for global. ChainMakerConfig = &CMConfig{StorageConfig: map[string]interface{}{}} )
View Source
var (
//ConfigFilepath 配置文件的路径,默认为当前文件夹的 perseus.yml 文件
ConfigFilepath = "./perseus.yml"
)
Functions ¶
func CheckNewCmBlockChainConfig ¶
func CheckNewCmBlockChainConfig() error
func InitLocalConfig ¶
InitLocalConfig init local config.
func RefreshLogLevelsConfig ¶
func RefreshLogLevelsConfig() error
RefreshLogLevelsConfig refresh the levels of the loggers with the logger config file.
func UpdateDebugConfig ¶
func UpdateDebugConfig(pairs []*config.ConfigKeyValue) error
UpdateDebugConfig refresh the switches of the debug mode.
Types ¶
type BirdsNestConfig ¶
type BirdsNestConfig struct { Length uint32 `mapstructure:"length"` // Cuckoo config Cuckoo CuckooConfig `mapstructure:"cuckoo"` // rules config Rules RulesConfig `mapstructure:"rules"` // Snapshot config Snapshot SnapshotSerializerConfig `mapstructure:"snapshot"` }
BirdsNestConfig birds
type BlockHeightSerializeIntervalConfig ¶
type BlockHeightSerializeIntervalConfig struct {
Interval int `mapstructure:"interval"`
}
BlockHeightSerializeIntervalConfig Timed serialization interval
type BlockchainConfig ¶
type CMConfig ¶
type CMConfig struct { AuthType string `mapstructure:"auth_type"` LogConfig logger.LogConfig `mapstructure:"log"` NetConfig netConfig `mapstructure:"net"` NodeConfig nodeConfig `mapstructure:"node"` RpcConfig rpcConfig `mapstructure:"rpc"` BlockChainConfig []BlockchainConfig `mapstructure:"blockchain"` ConsensusConfig ConsensusConfig `mapstructure:"consensus"` StorageConfig map[string]interface{} `mapstructure:"storage"` TxPoolConfig map[string]interface{} `mapstructure:"txpool"` SyncConfig syncConfig `mapstructure:"sync"` VMConfig map[string]interface{} `mapstructure:"vm"` CryptoEngine string `mapstructure:"crypto_engine"` // 开发调试使用 DebugConfig debugConfig `mapstructure:"debug"` PProfConfig pprofConfig `mapstructure:"pprof"` MonitorConfig monitorConfig `mapstructure:"monitor"` CoreConfig coreConfig `mapstructure:"core"` SchedulerConfig schedulerConfig `mapstructure:"scheduler"` TxFilter TxFilterConfig `mapstructure:"tx_filter"` // contains filtered or unexported fields }
CMConfig - Local config struct
func (*CMConfig) Deal ¶
func (c *CMConfig) Deal()
Deal deal and set the default configuration parameters
func (*CMConfig) GetBlockChains ¶
func (c *CMConfig) GetBlockChains() []BlockchainConfig
GetBlockChains - get blockchain config list
func (*CMConfig) GetStorePath ¶
func (*CMConfig) PrettyJson ¶
PrettyJson print with json.
type ConsensusConfig ¶
type ConsensusConfig struct {
RaftConfig raftConfig `mapstructure:"raft"`
}
type CuckooConfig ¶
type CuckooConfig struct { KeyType int32 `mapstructure:"key_type"` // num of tags for each bucket, which is b in paper. tag is fingerprint, which is f in paper. TagsPerBucket uint32 `mapstructure:"tags_per_bucket"` // num of bits for each item, which is length of tag(fingerprint) BitsPerItem uint32 `mapstructure:"bits_per_item"` // num of keys that filter will store. this value should close to and lower // nextPow2(maxNumKeys/tagsPerBucket) * maxLoadFactor. cause table.NumBuckets is always a power of two MaxNumKeys uint32 `mapstructure:"max_num_keys"` // has two constant parameters to choose from: // TableTypeSingle normal single table // TableTypePacked packed table, use semi-sort to save 1 bit per item TableType uint32 `mapstructure:"table_type"` }
CuckooConfig Cuckoo config
type FilterExtensionConfig ¶
type FilterExtensionConfig struct { // id expire time AbsoluteExpireTime int64 `mapstructure:"absolute_expire_time"` }
type RulesConfig ¶
type RulesConfig struct {
AbsoluteExpireTime int64 `mapstructure:"absolute_expire_time"`
}
RulesConfig birds
type ShardingBirdsNestConfig ¶
type ShardingBirdsNestConfig struct { Length uint32 `mapstructure:"length"` Timeout int64 `mapstructure:"timeout"` // Bird's Nest configuration BirdsNest BirdsNestConfig `mapstructure:"birds_nest"` // Snapshot config Snapshot SnapshotSerializerConfig `mapstructure:"snapshot"` }
ShardingBirdsNestConfig Sharding bird's Nest configuration
type SnapshotSerializerConfig ¶
type SnapshotSerializerConfig struct { Type int BlockHeight BlockHeightSerializeIntervalConfig `mapstructure:"block_height"` Timed TimedSerializeIntervalConfig `mapstructure:"timed"` // filepath Path string `mapstructure:"path"` }
SnapshotSerializerConfig Snapshot serializer config
type TimedSerializeIntervalConfig ¶
type TimedSerializeIntervalConfig struct {
Interval int `mapstructure:"interval"`
}
TimedSerializeIntervalConfig Timed serialization interval
type TxFilterConfig ¶
type TxFilterConfig struct { // Transaction filter type Type int32 `mapstructure:"type"` // Bird's nest configuration BirdsNest BirdsNestConfig `mapstructure:"birds_nest"` // Sharding bird's nest configuration ShardingBirdsNest ShardingBirdsNestConfig `mapstructure:"sharding"` }
TxFilterConfig tx filter
Click to show internal directories.
Click to hide internal directories.