Commit 7c2d056e authored by 张振华's avatar 张振华

update

parent 5542d4ec
...@@ -164,6 +164,11 @@ func (cs *ConsensusState) GetValidatorMgr() ValidatorMgr { ...@@ -164,6 +164,11 @@ func (cs *ConsensusState) GetValidatorMgr() ValidatorMgr {
return cs.validatorMgr.Copy() return cs.validatorMgr.Copy()
} }
// GetPrivValidator returns the pointer of PrivValidator
func (cs *ConsensusState) GetPrivValidator() ttypes.PrivValidator{
return cs.privValidator
}
// GetValidators returns a copy of the current validators. // GetValidators returns a copy of the current validators.
func (cs *ConsensusState) GetValidators() []*ttypes.Validator { func (cs *ConsensusState) GetValidators() []*ttypes.Validator {
cs.mtx.Lock() cs.mtx.Lock()
......
...@@ -758,3 +758,8 @@ func printCandidators(cands []*dty.Candidator) string { ...@@ -758,3 +758,8 @@ func printCandidators(cands []*dty.Candidator) string {
return result return result
} }
// GetConsensusState return the pointer to ConsensusState
func (client *Client)GetConsensusState() *ConsensusState {
return client.csState
}
Title="local"
[log]
# 日志级别,支持debug(dbug)/info/warn/error(eror)/crit
loglevel = "debug"
logConsoleLevel = "info"
# 日志文件名,可带目录,所有生成的日志文件都放到此目录下
logFile = "logs/chain33.log"
# 单个日志文件的最大值(单位:兆)
maxFileSize = 300
# 最多保存的历史日志文件个数
maxBackups = 100
# 最多保存的历史日志消息(单位:天)
maxAge = 28
# 日志文件名是否使用本地事件(否则使用UTC时间)
localTime = true
# 历史日志文件是否压缩(压缩格式为gz)
compress = true
# 是否打印调用源文件和行号
callerFile = false
# 是否打印调用方法
callerFunction = false
[blockchain]
defCacheSize=512
maxFetchBlockNum=128
timeoutSeconds=5
batchBlockNum=128
driver="leveldb"
dbPath="datadir"
dbCache=64
isStrongConsistency=true
singleMode=true
batchsync=false
enableTxQuickIndex=true
[p2p]
seeds=["127.0.0.1:13802"]
enable=true
isSeed=true
serverStart=true
innerSeedEnable=false
useGithub=false
innerBounds=300
msgCacheSize=10240
driver="leveldb"
dbPath="datadir/addrbook"
dbCache=4
grpcLogFile="grpc33.log"
version=199
verMix=199
verMax=199
[rpc]
jrpcBindAddr="localhost:8801"
grpcBindAddr="localhost:8802"
whitelist=["127.0.0.1"]
jrpcFuncWhitelist=["*"]
grpcFuncWhitelist=["*"]
[mempool]
name="timeline"
poolCacheSize=10240
minTxFee=100000
[consensus]
name="tendermint"
minerstart=false
[mver.consensus]
fundKeyAddr = "1BQXS6TxaYYG5mADaWij4AxhZZUTpw95a5"
coinReward = 18
coinDevFund = 12
ticketPrice = 10000
powLimitBits = "0x1f00ffff"
retargetAdjustmentFactor = 4
futureBlockTime = 16
ticketFrozenTime = 5 #5s only for test
ticketWithdrawTime = 10 #10s only for test
ticketMinerWaitTime = 2 #2s only for test
maxTxNumber = 1600 #160
targetTimespan = 2304
targetTimePerBlock = 16
[mver.consensus.ForkChainParamV1]
maxTxNumber = 10000
targetTimespan = 288 #only for test
targetTimePerBlock = 2
[mver.consensus.ForkChainParamV2]
powLimitBits = "0x1f2fffff"
[consensus.sub.dpos]
genesis="14KEKbYtKKQm4wMthSK9J4La4nAiidGozt"
genesisBlockTime=1514533394
timeoutCheckConnections=1000
timeoutVoting=3000
timeoutWaitNotify=2000
createEmptyBlocks=false
createEmptyBlocksInterval=0
validatorNodes=["127.0.0.1:46656"]
delegateNum=1
blockInterval=2
continueBlockNum=12
isValidator=true
rpcAddr="http://localhost:9801"
#shuffleType为1表示使用固定出块顺序,为2表示使用vrf信息进行出块顺序洗牌
shuffleType=1
#是否更新topN,如果为true,根据下面几个配置项定期更新topN节点;如果为false,则一直使用初始配置的节点,不关注投票结果
whetherUpdateTopN=false
blockNumToUpdateDelegate=20000
registTopNHeightLimit=100
updateTopNHeightLimit=200
[store]
name="kvdb"
driver="leveldb"
dbPath="datadir/mavltree"
dbCache=128
[store.sub.kvdb]
enableMavlPrefix=false
enableMVCC=false
[wallet]
minFee=100000
driver="leveldb"
dbPath="wallet"
dbCache=16
signType="secp256k1"
[wallet.sub.ticket]
minerdisable=false
minerwhitelist=["*"]
[exec]
isFree=false
minExecFee=100000
enableStat=false
enableMVCC=false
alias=["token1:token","token2:token","token3:token"]
saveTokenTxList=false
[exec.sub.cert]
# 是否启用证书验证和签名
enable=false
# 加密文件路径
cryptoPath="authdir/crypto"
# 带证书签名类型,支持"auth_ecdsa", "auth_sm2"
signType="auth_ecdsa"
...@@ -91,7 +91,7 @@ func regist(cmd *cobra.Command, args []string) { ...@@ -91,7 +91,7 @@ func regist(cmd *cobra.Command, args []string) {
address, _ := cmd.Flags().GetString("address") address, _ := cmd.Flags().GetString("address")
ip, _ := cmd.Flags().GetString("ip") ip, _ := cmd.Flags().GetString("ip")
payload := fmt.Sprintf("{\"pubkey\":\"%s\", \"address\":\"%s\", \"ip\":\"%s\"}", pubkey, address, ip) payload := fmt.Sprintf("{\"pubkey\":\"%s\", \"address\":\"%s\", \"IP\":\"%s\"}", pubkey, address, ip)
params := &rpctypes.CreateTxIn{ params := &rpctypes.CreateTxIn{
Execer: types.ExecName(dty.DPosX), Execer: types.ExecName(dty.DPosX),
ActionName: dty.CreateRegistTx, ActionName: dty.CreateRegistTx,
...@@ -242,7 +242,7 @@ func reRegist(cmd *cobra.Command, args []string) { ...@@ -242,7 +242,7 @@ func reRegist(cmd *cobra.Command, args []string) {
address, _ := cmd.Flags().GetString("address") address, _ := cmd.Flags().GetString("address")
ip, _ := cmd.Flags().GetString("ip") ip, _ := cmd.Flags().GetString("ip")
payload := fmt.Sprintf("{\"pubkey\":\"%s\", \"address\":\"%s\", \"ip\":\"%s\"}", pubkey, address, ip) payload := fmt.Sprintf("{\"pubkey\":\"%s\", \"address\":\"%s\", \"IP\":\"%s\"}", pubkey, address, ip)
params := &rpctypes.CreateTxIn{ params := &rpctypes.CreateTxIn{
Execer: types.ExecName(dty.DPosX), Execer: types.ExecName(dty.DPosX),
ActionName: dty.CreateReRegistTx, ActionName: dty.CreateReRegistTx,
...@@ -442,7 +442,7 @@ func DPosVrfQueryCmd() *cobra.Command { ...@@ -442,7 +442,7 @@ func DPosVrfQueryCmd() *cobra.Command {
} }
func addVrfQueryFlags(cmd *cobra.Command) { func addVrfQueryFlags(cmd *cobra.Command) {
cmd.Flags().StringP("type", "t", "", "query type") cmd.Flags().StringP("type", "t", "", "query type:dtime/timestamp/cycle/topN/pubkeys")
cmd.MarkFlagRequired("type") cmd.MarkFlagRequired("type")
cmd.Flags().StringP("time", "d", "", "time like 2019-06-18") cmd.Flags().StringP("time", "d", "", "time like 2019-06-18")
...@@ -873,7 +873,7 @@ func DPosCBQueryCmd() *cobra.Command { ...@@ -873,7 +873,7 @@ func DPosCBQueryCmd() *cobra.Command {
} }
func addCBQueryFlags(cmd *cobra.Command) { func addCBQueryFlags(cmd *cobra.Command) {
cmd.Flags().StringP("type", "t", "", "query type") cmd.Flags().StringP("type", "t", "", "query type:cycle/height/hash")
cmd.MarkFlagRequired("type") cmd.MarkFlagRequired("type")
cmd.Flags().Int64P("cycle", "c", 0, "cycle") cmd.Flags().Int64P("cycle", "c", 0, "cycle")
......
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment