Commit 143311fe authored by liuyuhang's avatar liuyuhang

modify

parent 28de2d98
......@@ -131,7 +131,7 @@ returnAddr="1KcCVZLSQYRUwE5EXTsAoQs9LuJW6xwfQa"
count=10000
[store]
name="mavl"
name="kvmvccmavl"
driver="leveldb"
dbPath="datadir/mavltree"
dbCache=128
......
......@@ -1092,6 +1092,31 @@ func (bs *BlockStore) SetUpgradeMeta(meta *types.UpgradeMeta) error {
return bs.db.SetSync(version.LocalDBMeta, verByte)
}
//SetStoreUpgradeMeta 获取存在blockchain中的Store的数据库版本号
func (bs *BlockStore) GetStoreUpgradeMeta() (*types.UpgradeMeta, error) {
ver := types.UpgradeMeta{}
version, err := bs.db.Get(version.StoreDBMeta)
if err != nil && err != dbm.ErrNotFoundInDb {
return nil, err
}
if len(version) == 0 {
return &types.UpgradeMeta{Version: "0.0.0"}, nil
}
err = types.Decode(version, &ver)
if err != nil {
return nil, err
}
storeLog.Info("GetStoreUpgradeMeta", "blockchain db version", ver)
return &ver, nil
}
//SetStoreUpgradeMeta 设置blockchain中的Store的数据库版本号
func (bs *BlockStore) SetStoreUpgradeMeta(meta *types.UpgradeMeta) error {
verByte := types.Encode(meta)
storeLog.Info("SetStoreUpgradeMeta", "meta", meta)
return bs.db.SetSync(version.StoreDBMeta, verByte)
}
//isRecordBlockSequence配置的合法性检测
func (bs *BlockStore) isRecordBlockSequenceValid(chain *BlockChain) {
lastHeight := bs.Height()
......
......@@ -128,7 +128,6 @@ func TestBlockChain(t *testing.T) {
testWriteBlockToDbTemp(t, blockchain)
testReadBlockToExec(t, blockchain)
testReExecBlock(t, blockchain)
testReExecBlockMsg(t, mock33, blockchain)
}
func testProcAddBlockMsg(t *testing.T, mock33 *testnode.Chain33Mock, blockchain *blockchain.BlockChain) {
......@@ -1115,17 +1114,6 @@ func testWriteBlockToDbTemp(t *testing.T, chain *blockchain.BlockChain) {
func testReExecBlock(t *testing.T, chain *blockchain.BlockChain) {
chainlog.Info("ReExecBlock begin ---------------------")
curheight := chain.GetBlockHeight()
chain.ProcessReExecBlock(0, curheight)
chain.ReExecBlock(0, curheight)
chainlog.Info("ReExecBlock end ---------------------")
}
func testReExecBlockMsg(t *testing.T, mock33 *testnode.Chain33Mock, chain *blockchain.BlockChain) {
var err error
client := mock33.GetClient()
msg1 := client.NewMessage("blockchain", types.EventReExecBlock, &types.ReqInt{Height: 8})
err = client.Send(msg1, true)
require.NoError(t, err)
_, err = client.Wait(msg1)
require.NoError(t, err)
time.Sleep(time.Millisecond * 20)
}
......@@ -90,8 +90,6 @@ func (chain *BlockChain) ProcRecvMsg() {
case types.EventGetSeqCBLastNum:
go chain.processMsg(msg, reqnum, chain.getSeqCBLastNum)
case types.EventReExecBlock:
go chain.processMsg(msg, reqnum, chain.reExecBlock)
default:
go chain.processMsg(msg, reqnum, chain.unknowMsg)
}
......@@ -135,17 +133,6 @@ func (chain *BlockChain) getSeqCBLastNum(msg *queue.Message) {
msg.Reply(chain.client.NewMessage("rpc", types.EventGetSeqCBLastNum, lastNum))
}
func (chain *BlockChain) reExecBlock(msg *queue.Message) {
data := (msg.Data).(*types.ReqInt)
curHeight := chain.GetBlockHeight()
if curHeight < data.Height {
msg.Reply(chain.client.NewMessage("store", types.EventReExecBlock, &types.ReplyString{Data: "none"}))
return
}
msg.Reply(chain.client.NewMessage("store", types.EventReExecBlock, &types.ReplyString{Data: "need"}))
chain.ProcessReExecBlock(data.Height, curHeight)
}
func (chain *BlockChain) queryTx(msg *queue.Message) {
txhash := (msg.Data).(*types.ReqHash)
TransactionDetail, err := chain.ProcQueryTxMsg(txhash.Hash)
......
......@@ -10,8 +10,6 @@ import (
"math/big"
"sync/atomic"
"fmt"
"github.com/33cn/chain33/client/api"
"github.com/33cn/chain33/common"
"github.com/33cn/chain33/common/difficulty"
......@@ -601,40 +599,6 @@ func (b *BlockChain) ProcessDelParaChainBlock(broadcast bool, blockdetail *types
return nil, true, false, nil
}
// ProcessReExecBlock 从对应高度本地重新执行区块
func (b *BlockChain) ProcessReExecBlock(startHeight, curHeight int64) {
var prevStateHash []byte
if startHeight > 0 {
blockdetail, err := b.GetBlock(startHeight - 1)
if err != nil {
panic(fmt.Sprintf("get height=%d err, this not allow fail", startHeight-1))
}
prevStateHash = blockdetail.Block.StateHash
}
for i := startHeight; i <= curHeight; i++ {
blockdetail, err := b.GetBlock(i)
if err != nil {
panic(fmt.Sprintf("get height=%d err, this not allow fail", i))
}
block := blockdetail.Block
err = execBlockUpgrade(b.client, prevStateHash, block, false)
if err != nil {
panic(fmt.Sprintf("execBlockEx height=%d err=%s, this not allow fail", i, err.Error()))
}
prevStateHash = block.StateHash
}
// 通知执行结束
msg := b.client.NewMessage("store", types.EventReExecBlock, &types.ReplyString{Data: "over"})
err := b.client.Send(msg, true)
if err != nil {
return
}
_, err = b.client.Wait(msg)
if err != nil {
return
}
}
// IsRecordFaultErr 检测此错误是否要记录到故障错误中
func IsRecordFaultErr(err error) bool {
return err != types.ErrFutureBlock && !api.IsGrpcError(err) && !api.IsQueueError(err)
......
......@@ -29,7 +29,7 @@ func (chain *BlockChain) UpgradeChain() {
}
if chain.needReIndex(meta) {
//如果没有开始重建index,那么先del all keys
if !meta.Indexing {
if !meta.Starting {
chainlog.Info("begin del all keys")
chain.blockStore.delAllKeys()
chainlog.Info("end del all keys")
......@@ -38,7 +38,7 @@ func (chain *BlockChain) UpgradeChain() {
//reindex 的过程中,会每个高度都去更新meta
chain.reIndex(start, curheight)
meta := &types.UpgradeMeta{
Indexing: false,
Starting: false,
Version: version.GetLocalDBVersion(),
Height: 0,
}
......@@ -59,7 +59,7 @@ func (chain *BlockChain) reIndex(start, end int64) {
}
func (chain *BlockChain) needReIndex(meta *types.UpgradeMeta) bool {
if meta.Indexing { //正在index
if meta.Starting { //正在index
return true
}
v1 := meta.Version
......@@ -89,7 +89,7 @@ func (chain *BlockChain) reIndexOne(height int64) error {
panic(err)
}
meta := &types.UpgradeMeta{
Indexing: true,
Starting: true,
Version: version.GetLocalDBVersion(),
Height: height + 1,
}
......
......@@ -202,6 +202,8 @@ dbPath="datadir/mavltree"
dbCache=128
# 数据库版本
localdbVersion="1.0.0"
# 状态数据库版本
storedbVersion="1.0.0"
[store.sub.mavl]
# 是否使能mavl加前缀
......
......@@ -12,8 +12,10 @@ var (
WalletVerKey = []byte("WalletVerKey")
BlockChainVerKey = []byte("BlockChainVerKey")
LocalDBMeta = []byte("LocalDBMeta")
StoreDBMeta = []byte("StoreDBMeta")
MavlTreeVerKey = []byte("MavlTreeVerKey")
localversion = "1.0.0"
storeversion = "1.0.0"
appversion = "1.0.0"
GitCommit string
)
......@@ -49,6 +51,22 @@ func SetLocalDBVersion(version string) {
}
}
//GetStoreDBVersion 数据库版本解析
/*
格式: v1.v2.v3
如果: v1 升级了, 那么意味着localdb 需要 重新 reindex
*/
func GetStoreDBVersion() string {
return localversion
}
//SetStoreDBVersion 通过设置版本号,强制重建数据库
func SetStoreDBVersion(version string) {
if version != "" {
localversion = version
}
}
//GetAppVersion 获取应用 app 的版本
func GetAppVersion() string {
return appversion
......
......@@ -160,26 +160,6 @@ func decodeTx(hexstr string) (*types.Transaction, error) {
return &tx, nil
}
// SendRawTransaction send rawtransaction by p2p
func (c *channelClient) SendRawTransaction(param *types.SignedTx) (*types.Reply, error) {
if param == nil {
err := types.ErrInvalidParam
log.Error("SendRawTransaction", "Error", err)
return nil, err
}
var tx types.Transaction
err := types.Decode(param.GetUnsign(), &tx)
if err == nil {
tx.Signature = &types.Signature{
Ty: param.GetTy(),
Pubkey: param.GetPubkey(),
Signature: param.GetSign(),
}
return c.SendTx(&tx)
}
return nil, err
}
// GetAddrOverview get overview of address
func (c *channelClient) GetAddrOverview(parm *types.ReqAddr) (*types.AddrOverview, error) {
err := address.CheckAddress(parm.Addr)
......
......@@ -80,11 +80,6 @@ func (g *Grpc) CreateRawTxGroup(ctx context.Context, in *pb.CreateTransactionGro
return &pb.UnsignTx{Data: reply}, nil
}
// SendRawTransaction send rawtransaction
func (g *Grpc) SendRawTransaction(ctx context.Context, in *pb.SignedTx) (*pb.Reply, error) {
return g.cli.SendRawTransaction(in)
}
// QueryTransaction query transaction by grpc
func (g *Grpc) QueryTransaction(ctx context.Context, in *pb.ReqHash) (*pb.TransactionDetail, error) {
return g.cli.QueryTx(in)
......
......@@ -8,7 +8,6 @@ import (
"context"
"encoding/hex"
"encoding/json"
"fmt"
"time"
"github.com/33cn/chain33/common"
......@@ -83,36 +82,6 @@ func (c *Chain33) CreateNoBalanceTransaction(in *types.NoBalanceTx, result *stri
return nil
}
// SendRawTransaction send rawtransacion
func (c *Chain33) SendRawTransaction(in rpctypes.SignedTx, result *interface{}) error {
var stx types.SignedTx
var err error
stx.Pubkey, err = hex.DecodeString(in.Pubkey)
if err != nil {
return err
}
stx.Sign, err = hex.DecodeString(in.Sign)
if err != nil {
return err
}
stx.Unsign, err = hex.DecodeString(in.Unsign)
if err != nil {
return err
}
stx.Ty = in.Ty
reply, err := c.cli.SendRawTransaction(&stx)
if err != nil {
return err
}
if reply.IsOk {
*result = "0x" + hex.EncodeToString(reply.Msg)
return nil
}
return fmt.Errorf(string(reply.Msg))
}
// SendTransaction send transaction
func (c *Chain33) SendTransaction(in rpctypes.RawParm, result *interface{}) error {
var parm types.Transaction
......
......@@ -86,9 +86,6 @@ func (store *BaseStore) SetQueueClient(c queue.Client) {
}
store.done <- struct{}{}
}()
if store.child != nil {
store.child.ProcEvent(nil)
}
}
//Wait wait for basestore ready
......
......@@ -81,6 +81,8 @@ type Consensus struct {
Genesis string `protobuf:"bytes,4,opt,name=genesis" json:"genesis,omitempty"`
HotkeyAddr string `protobuf:"bytes,5,opt,name=hotkeyAddr" json:"hotkeyAddr,omitempty"`
ForceMining bool `protobuf:"varint,6,opt,name=forceMining" json:"forceMining,omitempty"`
// 配置挖矿的合约名单
MinerExecs []string `protobuf:"bytes,7,rep,name=minerExecs" json:"minerExecs,omitempty"`
}
// Wallet 配置
......@@ -109,6 +111,8 @@ type Store struct {
DbCache int32 `protobuf:"varint,4,opt,name=dbCache" json:"dbCache,omitempty"`
// 数据库版本
LocalDBVersion string `protobuf:"bytes,5,opt,name=localdbVersion" json:"localdbVersion,omitempty"`
// 数据库版本
StoreDBVersion string `protobuf:"bytes,5,opt,name=storedbVersion" json:"storedbVersion,omitempty"`
}
// BlockChain 配置
......
......@@ -20,8 +20,6 @@ service chain33 {
//交易接口
rpc CreateRawTransaction(CreateTx) returns (UnsignTx) {}
rpc CreateRawTxGroup(CreateTransactionGroup) returns (UnsignTx) {}
//发送签名后交易
rpc SendRawTransaction(SignedTx) returns (Reply) {}
// 根据哈希查询交易
rpc QueryTransaction(ReqHash) returns (TransactionDetail) {}
// 发送交易
......
......@@ -76,13 +76,6 @@ message NoBalanceTx {
string expire = 4;
}
message SignedTx {
bytes unsign = 1;
bytes sign = 2;
bytes pubkey = 3;
int32 ty = 4;
}
message Transaction {
bytes execer = 1;
bytes payload = 2;
......@@ -244,7 +237,7 @@ message UserWrite {
}
message UpgradeMeta {
bool indexing = 1;
bool starting = 1;
string version = 2;
int64 height = 3;
}
\ No newline at end of file
......@@ -26,74 +26,74 @@ const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
func init() { proto.RegisterFile("rpc.proto", fileDescriptor_77a6da22d6a3feb1) }
var fileDescriptor_77a6da22d6a3feb1 = []byte{
// 1068 bytes of a gzipped FileDescriptorProto
// 1057 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x56, 0x6d, 0x6f, 0xdb, 0x36,
0x10, 0xd6, 0x87, 0xad, 0x69, 0x58, 0x27, 0x71, 0x98, 0x34, 0x6b, 0x85, 0x15, 0x05, 0x04, 0x0c,
0x1b, 0x30, 0xd4, 0x6e, 0xed, 0x2d, 0x7b, 0x29, 0x36, 0x20, 0x4e, 0x66, 0xc7, 0x58, 0xea, 0xa5,
0x91, 0xbb, 0x01, 0xfb, 0x46, 0xcb, 0x37, 0x47, 0x88, 0x4c, 0x2a, 0x24, 0x15, 0xcb, 0xbf, 0x66,
0x7f, 0x75, 0x20, 0x25, 0xea, 0xdd, 0x49, 0xf6, 0x4d, 0xbc, 0xbb, 0xe7, 0x5e, 0xc4, 0xe7, 0xee,
0x88, 0xb6, 0x79, 0xe8, 0x75, 0x42, 0xce, 0x24, 0xc3, 0x9f, 0xcb, 0x75, 0x08, 0xc2, 0x6e, 0x79,
0x6c, 0xb9, 0x64, 0x34, 0x11, 0xda, 0xfb, 0x92, 0x13, 0x2a, 0x88, 0x27, 0xfd, 0x4c, 0xd4, 0x9e,
0x05, 0xcc, 0xbb, 0xf1, 0xae, 0x89, 0x6f, 0x24, 0xad, 0x15, 0x09, 0x02, 0x90, 0xe9, 0x69, 0x3b,
0xec, 0x85, 0xe9, 0xe7, 0x0e, 0xf1, 0x3c, 0x16, 0x51, 0xa3, 0xd9, 0x85, 0x18, 0xbc, 0x48, 0x32,
0x9e, 0x9c, 0x7b, 0xff, 0x7e, 0x81, 0xb6, 0xb4, 0x9f, 0x7e, 0x1f, 0xbf, 0x41, 0xdb, 0x23, 0x90,
0x03, 0xe5, 0x5a, 0xe0, 0x76, 0x47, 0xe7, 0xd2, 0xb9, 0x82, 0xdb, 0x44, 0x62, 0xb7, 0x32, 0x49,
0x18, 0xac, 0x1d, 0x0b, 0x77, 0xd1, 0xce, 0x08, 0xe4, 0x05, 0x11, 0xf2, 0x1c, 0xc8, 0x1c, 0x38,
0xde, 0xc9, 0x21, 0x13, 0x3f, 0xb0, 0xcd, 0x31, 0xd1, 0x3a, 0x16, 0xfe, 0x19, 0x1d, 0x9e, 0x72,
0x20, 0x12, 0xae, 0xc8, 0x6a, 0x9a, 0xd7, 0x84, 0xf7, 0x52, 0xc3, 0x44, 0x39, 0x8d, 0x6d, 0x23,
0xf8, 0x44, 0x85, 0xbf, 0xa0, 0xd3, 0xd8, 0xb1, 0xf0, 0x19, 0x6a, 0xe7, 0xd8, 0x78, 0xc4, 0x59,
0x14, 0xe2, 0x57, 0x65, 0x5c, 0xee, 0x51, 0xab, 0x9b, 0xbc, 0x7c, 0x8f, 0xb0, 0x0b, 0x74, 0xbe,
0x21, 0xbe, 0xeb, 0x2f, 0x28, 0xcc, 0xa7, 0x71, 0xad, 0xd2, 0x5f, 0x51, 0xfb, 0x63, 0x04, 0x7c,
0x5d, 0x04, 0xed, 0xe6, 0xc5, 0x9e, 0x13, 0x71, 0x6d, 0xbf, 0x48, 0xcf, 0x05, 0x9b, 0x33, 0x90,
0xc4, 0x0f, 0x74, 0xd8, 0x3d, 0x15, 0xb6, 0x08, 0xc7, 0x75, 0xf3, 0x5a, 0xd8, 0x5f, 0xd0, 0xe1,
0x08, 0x64, 0xc1, 0x62, 0xb0, 0x3e, 0x99, 0xcf, 0x79, 0x31, 0xb4, 0x3a, 0xdb, 0x07, 0x45, 0xdc,
0x34, 0x1e, 0xd3, 0x7f, 0x98, 0x70, 0x2c, 0x3c, 0x42, 0x47, 0x55, 0xb8, 0xca, 0x14, 0x4a, 0x77,
0x9b, 0x48, 0xec, 0x97, 0x9b, 0xb2, 0x57, 0x8e, 0xde, 0x21, 0x34, 0x02, 0xf9, 0x01, 0x96, 0x97,
0x8c, 0x05, 0xd5, 0x5b, 0xc6, 0xe5, 0xe0, 0x17, 0xbe, 0x90, 0xba, 0xe2, 0x67, 0x23, 0x90, 0x27,
0x09, 0xf5, 0x44, 0x15, 0xf3, 0x3c, 0x3d, 0xfe, 0xa5, 0x39, 0x6b, 0xac, 0x34, 0x43, 0xd0, 0x04,
0x56, 0xa9, 0x00, 0x1f, 0x16, 0x50, 0x99, 0xd4, 0x3e, 0x6c, 0x02, 0x3b, 0x16, 0xbe, 0x42, 0xcf,
0x13, 0x51, 0xa1, 0x06, 0x95, 0x0d, 0x7e, 0x9d, 0xbb, 0x69, 0x34, 0xb0, 0x8f, 0x4a, 0x1e, 0xa7,
0x71, 0x5e, 0xf9, 0x10, 0xed, 0x8c, 0x97, 0x21, 0xe3, 0xf2, 0x92, 0xfb, 0x77, 0x37, 0xb0, 0xce,
0x28, 0x97, 0xf9, 0x2a, 0xa9, 0x37, 0xe6, 0x36, 0x40, 0x3b, 0x9a, 0x00, 0x4c, 0xdd, 0x17, 0x08,
0x51, 0xf7, 0x53, 0x52, 0xdb, 0xed, 0xe2, 0x4f, 0x55, 0x57, 0xe4, 0x58, 0xb8, 0x87, 0x9e, 0xba,
0x2a, 0xbb, 0x21, 0x00, 0x3e, 0xaa, 0xc3, 0xe5, 0x10, 0xa0, 0xc6, 0xa0, 0xf7, 0x68, 0xcb, 0x55,
0x2d, 0x3a, 0x0b, 0xf0, 0x8b, 0x06, 0xc8, 0x05, 0x99, 0x41, 0x70, 0x4f, 0xd2, 0xad, 0x0f, 0xc0,
0x17, 0x30, 0x20, 0x01, 0xa1, 0x1e, 0xe0, 0x2f, 0xab, 0x1e, 0x8a, 0xda, 0x32, 0x0f, 0x12, 0x56,
0x39, 0x16, 0x3e, 0x46, 0xdb, 0x2e, 0xc8, 0x4b, 0x22, 0xc4, 0x6a, 0x8e, 0x5f, 0x36, 0xa4, 0x90,
0xa8, 0x6a, 0x89, 0x7f, 0x85, 0x3e, 0xbb, 0x60, 0xde, 0x4d, 0x95, 0x38, 0x55, 0xb3, 0x37, 0xe8,
0xc9, 0x27, 0xaa, 0x0d, 0x0f, 0x4a, 0x45, 0x24, 0xc2, 0x86, 0x89, 0xa5, 0x58, 0x79, 0x09, 0xc0,
0x55, 0x8f, 0x54, 0x9d, 0x9b, 0x31, 0xa0, 0xf4, 0x19, 0x8d, 0x77, 0xd3, 0x11, 0xf7, 0xbf, 0xd8,
0x7f, 0x8c, 0x5a, 0x2a, 0x0e, 0x67, 0x21, 0x70, 0x75, 0x5d, 0x1b, 0xe8, 0xaf, 0x41, 0x99, 0x95,
0x63, 0xe1, 0x1f, 0xd0, 0xde, 0x08, 0x64, 0xfa, 0x6f, 0x24, 0x91, 0x51, 0xad, 0x73, 0xca, 0x65,
0x26, 0x36, 0xba, 0x6f, 0xda, 0x66, 0x72, 0xff, 0x71, 0x07, 0xfc, 0xce, 0x87, 0x55, 0x6d, 0x40,
0x99, 0x6b, 0x2e, 0x59, 0x39, 0x16, 0xfe, 0x51, 0x07, 0x55, 0xcc, 0x6b, 0x82, 0x96, 0x06, 0x4c,
0xd1, 0x48, 0xcf, 0x85, 0x96, 0x89, 0xaa, 0x22, 0x14, 0x73, 0x1d, 0x53, 0xd9, 0x48, 0xe2, 0x77,
0x68, 0x6b, 0x04, 0xd4, 0x05, 0x98, 0x67, 0x13, 0x30, 0x3d, 0x5f, 0x10, 0xba, 0x28, 0x43, 0x94,
0xd4, 0x40, 0x64, 0x05, 0xa2, 0xcf, 0x83, 0xf5, 0xe5, 0xaa, 0x11, 0xd2, 0x45, 0x4f, 0x5d, 0x72,
0x07, 0x1a, 0x63, 0x72, 0x37, 0x02, 0x0d, 0xaa, 0x12, 0xa3, 0xa7, 0x27, 0x9c, 0x21, 0xfa, 0x7e,
0x61, 0xf5, 0xa5, 0xec, 0x36, 0xdc, 0x28, 0xcc, 0xaa, 0x1e, 0x42, 0x7a, 0x29, 0x9c, 0xaa, 0xed,
0x99, 0xcd, 0x2a, 0x7d, 0xfa, 0x2d, 0xdd, 0xb1, 0x4d, 0x71, 0x94, 0x2e, 0xb9, 0xbd, 0x47, 0x62,
0x8e, 0xd1, 0x6e, 0x12, 0x87, 0x51, 0x01, 0x54, 0x44, 0xe2, 0x91, 0xb8, 0x9f, 0xd0, 0x7e, 0x6d,
0x31, 0x66, 0xa5, 0x99, 0x55, 0x3b, 0xa6, 0x4d, 0x6b, 0xf2, 0xad, 0xa6, 0xfd, 0x39, 0xc4, 0xd3,
0x38, 0xd9, 0x19, 0x35, 0x32, 0xb5, 0xb2, 0xdd, 0x1e, 0xa7, 0x8b, 0xf5, 0xd9, 0x59, 0xb4, 0x0c,
0xcd, 0x98, 0x2c, 0x2c, 0x18, 0x57, 0x72, 0x9f, 0x2e, 0xca, 0x8d, 0x92, 0xc8, 0x1c, 0x0b, 0x77,
0xd0, 0xd6, 0x9f, 0xc0, 0x85, 0xca, 0x6c, 0x43, 0x63, 0xa5, 0x6a, 0xd5, 0xaf, 0x8e, 0x85, 0xbf,
0x46, 0x4f, 0xc6, 0xc2, 0x5d, 0x53, 0xef, 0xa1, 0xc1, 0xd0, 0x45, 0xbb, 0x63, 0x31, 0x91, 0xe1,
0xa9, 0x22, 0xe7, 0x63, 0x00, 0x1d, 0xb4, 0x35, 0x01, 0xd9, 0x34, 0x16, 0x4c, 0x26, 0x13, 0x36,
0x87, 0xd4, 0x44, 0xff, 0x22, 0xd5, 0x35, 0x43, 0x22, 0x49, 0x30, 0x24, 0x7e, 0x10, 0x71, 0xd8,
0x14, 0x61, 0x4c, 0x65, 0xbf, 0xa7, 0x7f, 0xd1, 0x61, 0x3a, 0x4b, 0x74, 0xc7, 0xb8, 0x70, 0x1b,
0x81, 0x62, 0xdb, 0x66, 0xd8, 0xf1, 0x77, 0x8e, 0x85, 0xfb, 0x68, 0x5f, 0xd3, 0x3d, 0xb1, 0x7e,
0xe0, 0x3a, 0x0c, 0xe8, 0x7d, 0x3e, 0x0f, 0xee, 0x59, 0xfa, 0x07, 0xc5, 0x89, 0x90, 0x2f, 0xbd,
0xb7, 0xfa, 0x5d, 0x97, 0x82, 0x5d, 0xb8, 0xc5, 0x25, 0xef, 0x19, 0x5f, 0x4c, 0x15, 0x8e, 0x85,
0xbf, 0x45, 0xe8, 0x34, 0x60, 0x02, 0x3e, 0x46, 0x10, 0xc1, 0x43, 0x7f, 0x7a, 0xa8, 0x0b, 0x3a,
0x09, 0x02, 0xc5, 0x5c, 0xd3, 0x72, 0x85, 0xed, 0x54, 0xd6, 0x64, 0xc3, 0xb2, 0x2c, 0xd6, 0xfc,
0xde, 0x56, 0x0f, 0x36, 0xfd, 0x1e, 0xc4, 0x07, 0x05, 0xc2, 0x19, 0x61, 0x79, 0xce, 0x66, 0x62,
0xc7, 0xc2, 0x63, 0x64, 0x27, 0x0d, 0x30, 0x61, 0xa9, 0xbf, 0xa6, 0xa7, 0x59, 0xae, 0xbc, 0xc7,
0xd5, 0x31, 0x6a, 0xe9, 0xee, 0xbc, 0x22, 0x74, 0x3e, 0x89, 0x96, 0x38, 0xe7, 0xf9, 0xad, 0x12,
0xe9, 0xdb, 0x69, 0x1a, 0x84, 0xdf, 0xe8, 0xa9, 0x36, 0x64, 0xbc, 0xb4, 0xe3, 0x7e, 0x87, 0x75,
0xf5, 0x2e, 0x07, 0xaf, 0xff, 0x7e, 0xb5, 0xf0, 0xe5, 0x75, 0x34, 0xeb, 0x78, 0x6c, 0xd9, 0xed,
0xf7, 0x3d, 0xda, 0x4d, 0x1f, 0xec, 0x5d, 0x6d, 0x38, 0x7b, 0xa2, 0x5f, 0xf2, 0xfd, 0xff, 0x02,
0x00, 0x00, 0xff, 0xff, 0xa5, 0x8d, 0x8a, 0xc5, 0x48, 0x0c, 0x00, 0x00,
0x10, 0xd6, 0x87, 0xad, 0x69, 0x58, 0x27, 0x71, 0x98, 0x34, 0x68, 0x85, 0x15, 0x05, 0x04, 0x0c,
0x1b, 0x30, 0xd4, 0x6e, 0xed, 0x35, 0x7b, 0x29, 0x36, 0x20, 0x4e, 0x66, 0xc7, 0x98, 0xeb, 0xb9,
0x91, 0xbb, 0x01, 0xfb, 0x46, 0xcb, 0x37, 0x47, 0x88, 0x4c, 0x2a, 0x24, 0x15, 0xdb, 0xff, 0x78,
0x3f, 0x63, 0x20, 0x25, 0xea, 0xdd, 0x49, 0xf6, 0x4d, 0xbc, 0xbb, 0xe7, 0xee, 0xc8, 0x7b, 0xee,
0x4e, 0x68, 0x97, 0x87, 0x5e, 0x2b, 0xe4, 0x4c, 0x32, 0xfc, 0xa5, 0xdc, 0x84, 0x20, 0xec, 0x86,
0xc7, 0x96, 0x4b, 0x46, 0x63, 0xa1, 0x7d, 0x28, 0x39, 0xa1, 0x82, 0x78, 0xd2, 0x4f, 0x45, 0xcd,
0x59, 0xc0, 0xbc, 0x1b, 0xef, 0x9a, 0xf8, 0x46, 0xd2, 0x58, 0x91, 0x20, 0x00, 0x99, 0x9c, 0x76,
0xc3, 0x4e, 0x98, 0x7c, 0xee, 0x11, 0xcf, 0x63, 0x11, 0x35, 0x9a, 0x7d, 0x58, 0x83, 0x17, 0x49,
0xc6, 0xe3, 0x73, 0xe7, 0xdf, 0x13, 0xb4, 0xa3, 0xfd, 0x74, 0xbb, 0xf8, 0x0d, 0xda, 0x1d, 0x80,
0xec, 0x29, 0xd7, 0x02, 0x37, 0x5b, 0x3a, 0x97, 0xd6, 0x15, 0xdc, 0xc6, 0x12, 0xbb, 0x91, 0x4a,
0xc2, 0x60, 0xe3, 0x58, 0xb8, 0x8d, 0xf6, 0x06, 0x20, 0x47, 0x44, 0xc8, 0x4b, 0x20, 0x73, 0xe0,
0x78, 0x2f, 0x83, 0x8c, 0xfd, 0xc0, 0x36, 0xc7, 0x58, 0xeb, 0x58, 0xf8, 0x67, 0x74, 0x7c, 0xce,
0x81, 0x48, 0xb8, 0x22, 0xab, 0x69, 0x76, 0x27, 0x7c, 0x90, 0x18, 0xc6, 0xca, 0xe9, 0xda, 0x36,
0x82, 0xcf, 0x54, 0xf8, 0x0b, 0x3a, 0x5d, 0x3b, 0x16, 0xbe, 0x40, 0xcd, 0x0c, 0xbb, 0x1e, 0x70,
0x16, 0x85, 0xf8, 0x55, 0x11, 0x97, 0x79, 0xd4, 0xea, 0x3a, 0x2f, 0xbf, 0xa2, 0xe6, 0xa7, 0x08,
0xf8, 0x26, 0x1f, 0x7d, 0x3f, 0xcb, 0xfa, 0x92, 0x88, 0x6b, 0xfb, 0x45, 0x72, 0xce, 0xd9, 0x5c,
0x80, 0x24, 0x7e, 0xe0, 0x58, 0xf8, 0x3d, 0x3a, 0x70, 0x81, 0xce, 0xf3, 0x70, 0x5c, 0x35, 0xaf,
0xbc, 0xd4, 0x2f, 0xe8, 0x78, 0x00, 0x32, 0x67, 0xd1, 0xdb, 0x9c, 0xcd, 0xe7, 0x3c, 0x1f, 0x5a,
0x9d, 0xed, 0xa3, 0x3c, 0x6e, 0xba, 0x1e, 0xd2, 0x7f, 0x98, 0x70, 0x2c, 0x3c, 0x40, 0x27, 0x65,
0xb8, 0xca, 0x14, 0x0a, 0x45, 0x8a, 0x25, 0xf6, 0xcb, 0x6d, 0xd9, 0x2b, 0x47, 0xef, 0x10, 0x1a,
0x80, 0xfc, 0x08, 0xcb, 0x09, 0x63, 0x41, 0xb9, 0x5c, 0xb8, 0x18, 0x7c, 0xe4, 0x0b, 0xa9, 0x6f,
0xfc, 0x6c, 0x00, 0xf2, 0x2c, 0xe6, 0x90, 0x28, 0x63, 0x9e, 0x27, 0xc7, 0xbf, 0x34, 0xf9, 0x8c,
0x95, 0x2e, 0x35, 0x1a, 0xc3, 0x2a, 0x11, 0xe0, 0xe3, 0x1c, 0x2a, 0x95, 0xda, 0xc7, 0x75, 0x60,
0xc7, 0xc2, 0x57, 0xe8, 0x79, 0x2c, 0xca, 0xdd, 0x41, 0x65, 0x83, 0x5f, 0x67, 0x6e, 0x6a, 0x0d,
0xec, 0x93, 0x82, 0xc7, 0xe9, 0x3a, 0xbb, 0x79, 0x1f, 0xed, 0x0d, 0x97, 0x21, 0xe3, 0x72, 0xc2,
0xfd, 0xbb, 0x1b, 0xd8, 0xa4, 0xdc, 0x49, 0x7d, 0x15, 0xd4, 0x5b, 0x73, 0xeb, 0xa1, 0x3d, 0x4d,
0x00, 0xa6, 0xea, 0x05, 0x42, 0x54, 0xfd, 0x14, 0xd4, 0x76, 0x33, 0xff, 0xa8, 0xaa, 0x44, 0x8e,
0x85, 0x3b, 0xe8, 0xa9, 0xab, 0xb2, 0xeb, 0x03, 0xe0, 0x93, 0x2a, 0x5c, 0xf6, 0x01, 0x2a, 0x0c,
0xfa, 0x80, 0x76, 0x5c, 0xd5, 0x6b, 0xb3, 0x00, 0xbf, 0xa8, 0x81, 0x8c, 0xc8, 0x0c, 0x82, 0x7b,
0x92, 0x6e, 0x7c, 0x04, 0xbe, 0x80, 0x1e, 0x09, 0x08, 0xf5, 0x00, 0x7f, 0x55, 0xf6, 0x90, 0xd7,
0x16, 0x79, 0x10, 0xb3, 0xca, 0xb1, 0xf0, 0x29, 0xda, 0x75, 0x41, 0x4e, 0x88, 0x10, 0xab, 0x39,
0x7e, 0x59, 0x93, 0x42, 0xac, 0xaa, 0x24, 0xfe, 0x35, 0xfa, 0x62, 0xc4, 0xbc, 0x9b, 0x32, 0x71,
0xca, 0x66, 0x6f, 0xd0, 0x93, 0xcf, 0x54, 0x1b, 0x1e, 0x15, 0x2e, 0x11, 0x0b, 0x6b, 0x46, 0x8f,
0x62, 0xe5, 0x04, 0x80, 0xab, 0x1e, 0x29, 0x3b, 0x37, 0x8d, 0xaf, 0xf4, 0x29, 0x8d, 0xf7, 0x93,
0x59, 0xf5, 0xbf, 0xd8, 0x7f, 0x8a, 0x1a, 0x2a, 0x0e, 0x67, 0x21, 0x70, 0x55, 0xae, 0x2d, 0xf4,
0xd7, 0xa0, 0xd4, 0xca, 0xb1, 0xf0, 0x0f, 0xe8, 0x60, 0x00, 0x32, 0x79, 0x1b, 0x49, 0x64, 0x54,
0xe9, 0x9c, 0xe2, 0x35, 0x63, 0x1b, 0xdd, 0x37, 0x4d, 0x33, 0x82, 0xff, 0xb8, 0x03, 0x7e, 0xe7,
0xc3, 0xaa, 0x32, 0xa0, 0x4c, 0x99, 0x0b, 0x56, 0x8e, 0x85, 0x7f, 0xd4, 0x41, 0x15, 0xf3, 0xea,
0xa0, 0x85, 0x01, 0x93, 0x37, 0xd2, 0x73, 0xa1, 0x61, 0xa2, 0xaa, 0x08, 0xf9, 0x5c, 0x87, 0x54,
0xd6, 0x92, 0xf8, 0x1d, 0xda, 0x19, 0x00, 0x75, 0x01, 0xe6, 0xe9, 0x04, 0x4c, 0xce, 0x23, 0x42,
0x17, 0x45, 0x88, 0x92, 0x1a, 0x88, 0x2c, 0x41, 0xf4, 0xb9, 0xb7, 0x99, 0xac, 0x6a, 0x21, 0x6d,
0xf4, 0xd4, 0x25, 0x77, 0xa0, 0x31, 0x26, 0x77, 0x23, 0xd0, 0xa0, 0x32, 0x31, 0x3a, 0x7a, 0xc2,
0x19, 0xa2, 0x1f, 0xe6, 0x76, 0x58, 0xc2, 0x6e, 0xc3, 0x8d, 0xdc, 0xac, 0xea, 0x20, 0xa4, 0x97,
0xc2, 0xb9, 0x5a, 0x83, 0xe9, 0xac, 0xd2, 0xa7, 0xdf, 0x92, 0x65, 0x59, 0x17, 0x47, 0xe9, 0xe2,
0xea, 0x3d, 0x12, 0x73, 0x8a, 0xf6, 0xe3, 0x38, 0x8c, 0x0a, 0xa0, 0x22, 0x12, 0x8f, 0xc4, 0xfd,
0x84, 0x0e, 0x2b, 0x1b, 0x2e, 0xbd, 0x9a, 0xd9, 0x99, 0x43, 0x5a, 0xb7, 0xef, 0xde, 0x6a, 0xda,
0x5f, 0xc2, 0x7a, 0xba, 0x8e, 0x77, 0x46, 0x85, 0x4c, 0x8d, 0x74, 0x49, 0xaf, 0x35, 0xe2, 0x3d,
0x7a, 0x76, 0x11, 0x2d, 0x43, 0x33, 0x26, 0x73, 0x0b, 0xc6, 0x95, 0xdc, 0xa7, 0x8b, 0x62, 0xa3,
0xc4, 0x32, 0xc7, 0xc2, 0x2d, 0xb4, 0xf3, 0x27, 0x70, 0xa1, 0x32, 0xdb, 0xd2, 0x58, 0x89, 0x5a,
0xf5, 0xab, 0x63, 0xe1, 0x6f, 0xd0, 0x93, 0xa1, 0x70, 0x37, 0xd4, 0x7b, 0x68, 0x30, 0xb4, 0xd1,
0xfe, 0x50, 0x8c, 0x65, 0x78, 0xae, 0xc8, 0xf9, 0x18, 0x40, 0x0b, 0xed, 0x8c, 0x41, 0xd6, 0x8d,
0x05, 0x93, 0xc9, 0x98, 0xcd, 0x21, 0x31, 0xd1, 0x4f, 0xa4, 0xba, 0xa6, 0x4f, 0x24, 0x09, 0xfa,
0xc4, 0x0f, 0x22, 0x0e, 0xdb, 0x22, 0x0c, 0xa9, 0xec, 0x76, 0xf4, 0x13, 0x1d, 0x27, 0xb3, 0x44,
0x77, 0x8c, 0x0b, 0xb7, 0x11, 0x28, 0xb6, 0x6d, 0x87, 0x9d, 0x7e, 0xef, 0x58, 0xb8, 0x8b, 0x0e,
0x35, 0xdd, 0x63, 0xeb, 0x07, 0xca, 0x61, 0x40, 0x1f, 0xb2, 0x79, 0x70, 0xcf, 0xd2, 0x3f, 0xca,
0x4f, 0x84, 0x6c, 0xe9, 0xbd, 0xd5, 0x3f, 0x68, 0x09, 0xd8, 0x85, 0x5b, 0x5c, 0xf0, 0x9e, 0xf2,
0xc5, 0xdc, 0xc2, 0xb1, 0xf0, 0x77, 0x08, 0x9d, 0x07, 0x4c, 0xc0, 0xa7, 0x08, 0x22, 0x78, 0xe8,
0xa5, 0xfb, 0xfa, 0x42, 0x67, 0x41, 0xa0, 0x98, 0x6b, 0x5a, 0x2e, 0xb7, 0x9d, 0x8a, 0x9a, 0x74,
0x58, 0x16, 0xc5, 0x9a, 0xdf, 0xbb, 0xae, 0xbf, 0xa0, 0xfa, 0xc7, 0x0e, 0x1f, 0xe5, 0x08, 0x67,
0x84, 0xc5, 0x39, 0x9b, 0x8a, 0x1d, 0x0b, 0x0f, 0x91, 0x1d, 0x37, 0xc0, 0x98, 0x25, 0xfe, 0xea,
0x7e, 0xcd, 0x32, 0xe5, 0x3d, 0xae, 0x4e, 0x51, 0x43, 0x77, 0xe7, 0x15, 0xa1, 0xf3, 0x71, 0xb4,
0xc4, 0x19, 0xcf, 0x6f, 0x95, 0x48, 0x57, 0xa7, 0x6e, 0x10, 0x7e, 0xab, 0xa7, 0x5a, 0x9f, 0xf1,
0xc2, 0x8e, 0xfb, 0x1d, 0x36, 0xe5, 0x5a, 0xf6, 0x5e, 0xff, 0xfd, 0x6a, 0xe1, 0xcb, 0xeb, 0x68,
0xd6, 0xf2, 0xd8, 0xb2, 0xdd, 0xed, 0x7a, 0xb4, 0x9d, 0xfc, 0x79, 0xb7, 0xb5, 0xe1, 0xec, 0x89,
0xfe, 0x25, 0xef, 0xfe, 0x17, 0x00, 0x00, 0xff, 0xff, 0x13, 0xe5, 0x27, 0xe0, 0x11, 0x0c, 0x00,
0x00,
}
// Reference imports to suppress errors if they are not otherwise used.
......@@ -116,8 +116,6 @@ type Chain33Client interface {
//交易接口
CreateRawTransaction(ctx context.Context, in *CreateTx, opts ...grpc.CallOption) (*UnsignTx, error)
CreateRawTxGroup(ctx context.Context, in *CreateTransactionGroup, opts ...grpc.CallOption) (*UnsignTx, error)
//发送签名后交易
SendRawTransaction(ctx context.Context, in *SignedTx, opts ...grpc.CallOption) (*Reply, error)
// 根据哈希查询交易
QueryTransaction(ctx context.Context, in *ReqHash, opts ...grpc.CallOption) (*TransactionDetail, error)
// 发送交易
......@@ -256,15 +254,6 @@ func (c *chain33Client) CreateRawTxGroup(ctx context.Context, in *CreateTransact
return out, nil
}
func (c *chain33Client) SendRawTransaction(ctx context.Context, in *SignedTx, opts ...grpc.CallOption) (*Reply, error) {
out := new(Reply)
err := c.cc.Invoke(ctx, "/types.chain33/SendRawTransaction", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *chain33Client) QueryTransaction(ctx context.Context, in *ReqHash, opts ...grpc.CallOption) (*TransactionDetail, error) {
out := new(TransactionDetail)
err := c.cc.Invoke(ctx, "/types.chain33/QueryTransaction", in, out, opts...)
......@@ -707,8 +696,6 @@ type Chain33Server interface {
//交易接口
CreateRawTransaction(context.Context, *CreateTx) (*UnsignTx, error)
CreateRawTxGroup(context.Context, *CreateTransactionGroup) (*UnsignTx, error)
//发送签名后交易
SendRawTransaction(context.Context, *SignedTx) (*Reply, error)
// 根据哈希查询交易
QueryTransaction(context.Context, *ReqHash) (*TransactionDetail, error)
// 发送交易
......@@ -879,24 +866,6 @@ func _Chain33_CreateRawTxGroup_Handler(srv interface{}, ctx context.Context, dec
return interceptor(ctx, in, info, handler)
}
func _Chain33_SendRawTransaction_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(SignedTx)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(Chain33Server).SendRawTransaction(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/types.chain33/SendRawTransaction",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(Chain33Server).SendRawTransaction(ctx, req.(*SignedTx))
}
return interceptor(ctx, in, info, handler)
}
func _Chain33_QueryTransaction_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ReqHash)
if err := dec(in); err != nil {
......@@ -1782,10 +1751,6 @@ var _Chain33_serviceDesc = grpc.ServiceDesc{
Handler: _Chain33_CreateRawTxGroup_Handler,
},
{
MethodName: "SendRawTransaction",
Handler: _Chain33_SendRawTransaction_Handler,
},
{
MethodName: "QueryTransaction",
Handler: _Chain33_QueryTransaction_Handler,
},
......
......@@ -638,69 +638,6 @@ func (m *NoBalanceTx) GetExpire() string {
return ""
}
type SignedTx struct {
Unsign []byte `protobuf:"bytes,1,opt,name=unsign,proto3" json:"unsign,omitempty"`
Sign []byte `protobuf:"bytes,2,opt,name=sign,proto3" json:"sign,omitempty"`
Pubkey []byte `protobuf:"bytes,3,opt,name=pubkey,proto3" json:"pubkey,omitempty"`
Ty int32 `protobuf:"varint,4,opt,name=ty,proto3" json:"ty,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *SignedTx) Reset() { *m = SignedTx{} }
func (m *SignedTx) String() string { return proto.CompactTextString(m) }
func (*SignedTx) ProtoMessage() {}
func (*SignedTx) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{10}
}
func (m *SignedTx) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SignedTx.Unmarshal(m, b)
}
func (m *SignedTx) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_SignedTx.Marshal(b, m, deterministic)
}
func (m *SignedTx) XXX_Merge(src proto.Message) {
xxx_messageInfo_SignedTx.Merge(m, src)
}
func (m *SignedTx) XXX_Size() int {
return xxx_messageInfo_SignedTx.Size(m)
}
func (m *SignedTx) XXX_DiscardUnknown() {
xxx_messageInfo_SignedTx.DiscardUnknown(m)
}
var xxx_messageInfo_SignedTx proto.InternalMessageInfo
func (m *SignedTx) GetUnsign() []byte {
if m != nil {
return m.Unsign
}
return nil
}
func (m *SignedTx) GetSign() []byte {
if m != nil {
return m.Sign
}
return nil
}
func (m *SignedTx) GetPubkey() []byte {
if m != nil {
return m.Pubkey
}
return nil
}
func (m *SignedTx) GetTy() int32 {
if m != nil {
return m.Ty
}
return 0
}
type Transaction struct {
Execer []byte `protobuf:"bytes,1,opt,name=execer,proto3" json:"execer,omitempty"`
Payload []byte `protobuf:"bytes,2,opt,name=payload,proto3" json:"payload,omitempty"`
......@@ -723,7 +660,7 @@ func (m *Transaction) Reset() { *m = Transaction{} }
func (m *Transaction) String() string { return proto.CompactTextString(m) }
func (*Transaction) ProtoMessage() {}
func (*Transaction) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{11}
return fileDescriptor_2cc4e03d2c28c490, []int{10}
}
func (m *Transaction) XXX_Unmarshal(b []byte) error {
......@@ -825,7 +762,7 @@ func (m *Transactions) Reset() { *m = Transactions{} }
func (m *Transactions) String() string { return proto.CompactTextString(m) }
func (*Transactions) ProtoMessage() {}
func (*Transactions) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{12}
return fileDescriptor_2cc4e03d2c28c490, []int{11}
}
func (m *Transactions) XXX_Unmarshal(b []byte) error {
......@@ -865,7 +802,7 @@ func (m *RingSignature) Reset() { *m = RingSignature{} }
func (m *RingSignature) String() string { return proto.CompactTextString(m) }
func (*RingSignature) ProtoMessage() {}
func (*RingSignature) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{13}
return fileDescriptor_2cc4e03d2c28c490, []int{12}
}
func (m *RingSignature) XXX_Unmarshal(b []byte) error {
......@@ -906,7 +843,7 @@ func (m *RingSignatureItem) Reset() { *m = RingSignatureItem{} }
func (m *RingSignatureItem) String() string { return proto.CompactTextString(m) }
func (*RingSignatureItem) ProtoMessage() {}
func (*RingSignatureItem) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{14}
return fileDescriptor_2cc4e03d2c28c490, []int{13}
}
func (m *RingSignatureItem) XXX_Unmarshal(b []byte) error {
......@@ -965,7 +902,7 @@ func (m *Signature) Reset() { *m = Signature{} }
func (m *Signature) String() string { return proto.CompactTextString(m) }
func (*Signature) ProtoMessage() {}
func (*Signature) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{15}
return fileDescriptor_2cc4e03d2c28c490, []int{14}
}
func (m *Signature) XXX_Unmarshal(b []byte) error {
......@@ -1020,7 +957,7 @@ func (m *AddrOverview) Reset() { *m = AddrOverview{} }
func (m *AddrOverview) String() string { return proto.CompactTextString(m) }
func (*AddrOverview) ProtoMessage() {}
func (*AddrOverview) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{16}
return fileDescriptor_2cc4e03d2c28c490, []int{15}
}
func (m *AddrOverview) XXX_Unmarshal(b []byte) error {
......@@ -1079,7 +1016,7 @@ func (m *ReqAddr) Reset() { *m = ReqAddr{} }
func (m *ReqAddr) String() string { return proto.CompactTextString(m) }
func (*ReqAddr) ProtoMessage() {}
func (*ReqAddr) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{17}
return fileDescriptor_2cc4e03d2c28c490, []int{16}
}
func (m *ReqAddr) XXX_Unmarshal(b []byte) error {
......@@ -1155,7 +1092,7 @@ func (m *ReqPrivacy) Reset() { *m = ReqPrivacy{} }
func (m *ReqPrivacy) String() string { return proto.CompactTextString(m) }
func (*ReqPrivacy) ProtoMessage() {}
func (*ReqPrivacy) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{18}
return fileDescriptor_2cc4e03d2c28c490, []int{17}
}
func (m *ReqPrivacy) XXX_Unmarshal(b []byte) error {
......@@ -1208,7 +1145,7 @@ func (m *HexTx) Reset() { *m = HexTx{} }
func (m *HexTx) String() string { return proto.CompactTextString(m) }
func (*HexTx) ProtoMessage() {}
func (*HexTx) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{19}
return fileDescriptor_2cc4e03d2c28c490, []int{18}
}
func (m *HexTx) XXX_Unmarshal(b []byte) error {
......@@ -1250,7 +1187,7 @@ func (m *ReplyTxInfo) Reset() { *m = ReplyTxInfo{} }
func (m *ReplyTxInfo) String() string { return proto.CompactTextString(m) }
func (*ReplyTxInfo) ProtoMessage() {}
func (*ReplyTxInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{20}
return fileDescriptor_2cc4e03d2c28c490, []int{19}
}
func (m *ReplyTxInfo) XXX_Unmarshal(b []byte) error {
......@@ -1310,7 +1247,7 @@ func (m *ReqTxList) Reset() { *m = ReqTxList{} }
func (m *ReqTxList) String() string { return proto.CompactTextString(m) }
func (*ReqTxList) ProtoMessage() {}
func (*ReqTxList) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{21}
return fileDescriptor_2cc4e03d2c28c490, []int{20}
}
func (m *ReqTxList) XXX_Unmarshal(b []byte) error {
......@@ -1349,7 +1286,7 @@ func (m *ReplyTxList) Reset() { *m = ReplyTxList{} }
func (m *ReplyTxList) String() string { return proto.CompactTextString(m) }
func (*ReplyTxList) ProtoMessage() {}
func (*ReplyTxList) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{22}
return fileDescriptor_2cc4e03d2c28c490, []int{21}
}
func (m *ReplyTxList) XXX_Unmarshal(b []byte) error {
......@@ -1388,7 +1325,7 @@ func (m *ReplyProperFee) Reset() { *m = ReplyProperFee{} }
func (m *ReplyProperFee) String() string { return proto.CompactTextString(m) }
func (*ReplyProperFee) ProtoMessage() {}
func (*ReplyProperFee) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{23}
return fileDescriptor_2cc4e03d2c28c490, []int{22}
}
func (m *ReplyProperFee) XXX_Unmarshal(b []byte) error {
......@@ -1429,7 +1366,7 @@ func (m *TxHashList) Reset() { *m = TxHashList{} }
func (m *TxHashList) String() string { return proto.CompactTextString(m) }
func (*TxHashList) ProtoMessage() {}
func (*TxHashList) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{24}
return fileDescriptor_2cc4e03d2c28c490, []int{23}
}
func (m *TxHashList) XXX_Unmarshal(b []byte) error {
......@@ -1482,7 +1419,7 @@ func (m *ReplyTxInfos) Reset() { *m = ReplyTxInfos{} }
func (m *ReplyTxInfos) String() string { return proto.CompactTextString(m) }
func (*ReplyTxInfos) ProtoMessage() {}
func (*ReplyTxInfos) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{25}
return fileDescriptor_2cc4e03d2c28c490, []int{24}
}
func (m *ReplyTxInfos) XXX_Unmarshal(b []byte) error {
......@@ -1522,7 +1459,7 @@ func (m *ReceiptLog) Reset() { *m = ReceiptLog{} }
func (m *ReceiptLog) String() string { return proto.CompactTextString(m) }
func (*ReceiptLog) ProtoMessage() {}
func (*ReceiptLog) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{26}
return fileDescriptor_2cc4e03d2c28c490, []int{25}
}
func (m *ReceiptLog) XXX_Unmarshal(b []byte) error {
......@@ -1573,7 +1510,7 @@ func (m *Receipt) Reset() { *m = Receipt{} }
func (m *Receipt) String() string { return proto.CompactTextString(m) }
func (*Receipt) ProtoMessage() {}
func (*Receipt) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{27}
return fileDescriptor_2cc4e03d2c28c490, []int{26}
}
func (m *Receipt) XXX_Unmarshal(b []byte) error {
......@@ -1627,7 +1564,7 @@ func (m *ReceiptData) Reset() { *m = ReceiptData{} }
func (m *ReceiptData) String() string { return proto.CompactTextString(m) }
func (*ReceiptData) ProtoMessage() {}
func (*ReceiptData) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{28}
return fileDescriptor_2cc4e03d2c28c490, []int{27}
}
func (m *ReceiptData) XXX_Unmarshal(b []byte) error {
......@@ -1678,7 +1615,7 @@ func (m *TxResult) Reset() { *m = TxResult{} }
func (m *TxResult) String() string { return proto.CompactTextString(m) }
func (*TxResult) ProtoMessage() {}
func (*TxResult) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{29}
return fileDescriptor_2cc4e03d2c28c490, []int{28}
}
func (m *TxResult) XXX_Unmarshal(b []byte) error {
......@@ -1761,7 +1698,7 @@ func (m *TransactionDetail) Reset() { *m = TransactionDetail{} }
func (m *TransactionDetail) String() string { return proto.CompactTextString(m) }
func (*TransactionDetail) ProtoMessage() {}
func (*TransactionDetail) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{30}
return fileDescriptor_2cc4e03d2c28c490, []int{29}
}
func (m *TransactionDetail) XXX_Unmarshal(b []byte) error {
......@@ -1863,7 +1800,7 @@ func (m *TransactionDetails) Reset() { *m = TransactionDetails{} }
func (m *TransactionDetails) String() string { return proto.CompactTextString(m) }
func (*TransactionDetails) ProtoMessage() {}
func (*TransactionDetails) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{31}
return fileDescriptor_2cc4e03d2c28c490, []int{30}
}
func (m *TransactionDetails) XXX_Unmarshal(b []byte) error {
......@@ -1902,7 +1839,7 @@ func (m *ReqAddrs) Reset() { *m = ReqAddrs{} }
func (m *ReqAddrs) String() string { return proto.CompactTextString(m) }
func (*ReqAddrs) ProtoMessage() {}
func (*ReqAddrs) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{32}
return fileDescriptor_2cc4e03d2c28c490, []int{31}
}
func (m *ReqAddrs) XXX_Unmarshal(b []byte) error {
......@@ -1941,7 +1878,7 @@ func (m *ReqDecodeRawTransaction) Reset() { *m = ReqDecodeRawTransaction
func (m *ReqDecodeRawTransaction) String() string { return proto.CompactTextString(m) }
func (*ReqDecodeRawTransaction) ProtoMessage() {}
func (*ReqDecodeRawTransaction) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{33}
return fileDescriptor_2cc4e03d2c28c490, []int{32}
}
func (m *ReqDecodeRawTransaction) XXX_Unmarshal(b []byte) error {
......@@ -1981,7 +1918,7 @@ func (m *UserWrite) Reset() { *m = UserWrite{} }
func (m *UserWrite) String() string { return proto.CompactTextString(m) }
func (*UserWrite) ProtoMessage() {}
func (*UserWrite) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{34}
return fileDescriptor_2cc4e03d2c28c490, []int{33}
}
func (m *UserWrite) XXX_Unmarshal(b []byte) error {
......@@ -2017,7 +1954,7 @@ func (m *UserWrite) GetContent() string {
}
type UpgradeMeta struct {
Indexing bool `protobuf:"varint,1,opt,name=indexing,proto3" json:"indexing,omitempty"`
Starting bool `protobuf:"varint,1,opt,name=starting,proto3" json:"starting,omitempty"`
Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
Height int64 `protobuf:"varint,3,opt,name=height,proto3" json:"height,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
......@@ -2029,7 +1966,7 @@ func (m *UpgradeMeta) Reset() { *m = UpgradeMeta{} }
func (m *UpgradeMeta) String() string { return proto.CompactTextString(m) }
func (*UpgradeMeta) ProtoMessage() {}
func (*UpgradeMeta) Descriptor() ([]byte, []int) {
return fileDescriptor_2cc4e03d2c28c490, []int{35}
return fileDescriptor_2cc4e03d2c28c490, []int{34}
}
func (m *UpgradeMeta) XXX_Unmarshal(b []byte) error {
......@@ -2050,9 +1987,9 @@ func (m *UpgradeMeta) XXX_DiscardUnknown() {
var xxx_messageInfo_UpgradeMeta proto.InternalMessageInfo
func (m *UpgradeMeta) GetIndexing() bool {
func (m *UpgradeMeta) GetStarting() bool {
if m != nil {
return m.Indexing
return m.Starting
}
return false
}
......@@ -2082,7 +2019,6 @@ func init() {
proto.RegisterType((*CreateTransactionGroup)(nil), "types.CreateTransactionGroup")
proto.RegisterType((*UnsignTx)(nil), "types.UnsignTx")
proto.RegisterType((*NoBalanceTx)(nil), "types.NoBalanceTx")
proto.RegisterType((*SignedTx)(nil), "types.SignedTx")
proto.RegisterType((*Transaction)(nil), "types.Transaction")
proto.RegisterType((*Transactions)(nil), "types.Transactions")
proto.RegisterType((*RingSignature)(nil), "types.RingSignature")
......@@ -2113,90 +2049,88 @@ func init() {
func init() { proto.RegisterFile("transaction.proto", fileDescriptor_2cc4e03d2c28c490) }
var fileDescriptor_2cc4e03d2c28c490 = []byte{
// 1348 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x57, 0xdb, 0x8e, 0x13, 0x47,
0x13, 0x96, 0x67, 0x6c, 0xaf, 0x5d, 0x36, 0xfc, 0xec, 0x08, 0x2d, 0x16, 0xe2, 0x87, 0x4d, 0x8b,
0x48, 0x08, 0x21, 0xaf, 0xb4, 0xcb, 0x5d, 0x22, 0x25, 0xc0, 0x26, 0x80, 0x16, 0x08, 0x69, 0xcc,
0x41, 0x49, 0x14, 0xa9, 0x77, 0x5c, 0x6b, 0x77, 0xb0, 0xa7, 0xbd, 0x33, 0xed, 0x65, 0xfc, 0x02,
0xb9, 0x49, 0xee, 0xf2, 0x48, 0x79, 0x81, 0x3c, 0x46, 0x1e, 0x23, 0xea, 0xea, 0xee, 0x99, 0xf6,
0x1e, 0x10, 0x17, 0x91, 0x72, 0xd7, 0x5f, 0x75, 0xb9, 0xea, 0xab, 0xe3, 0xb4, 0x61, 0x53, 0xe7,
0x22, 0x2b, 0x44, 0xaa, 0xa5, 0xca, 0x86, 0x8b, 0x5c, 0x69, 0x95, 0xb4, 0xf4, 0x6a, 0x81, 0xc5,
0xf5, 0x7e, 0xaa, 0xe6, 0x73, 0x2f, 0x64, 0xcf, 0xe1, 0xd2, 0x83, 0xa2, 0x40, 0x5d, 0x3c, 0xc6,
0x0c, 0x0b, 0x59, 0x24, 0x5b, 0xd0, 0x16, 0x73, 0xb5, 0xcc, 0xf4, 0x20, 0xda, 0x6e, 0xdc, 0x89,
0xb9, 0x43, 0xc9, 0x6d, 0xb8, 0x94, 0xa3, 0x5e, 0xe6, 0xd9, 0x83, 0xf1, 0x38, 0xc7, 0xa2, 0x18,
0xc4, 0xdb, 0x8d, 0x3b, 0x5d, 0xbe, 0x2e, 0x64, 0xbf, 0x37, 0xe0, 0xaa, 0xb5, 0x37, 0x32, 0xfe,
0x8f, 0x30, 0x1f, 0xa9, 0x6f, 0x4a, 0x4c, 0x93, 0x1b, 0xd0, 0x4d, 0x95, 0xcc, 0xb4, 0x7a, 0x8f,
0xd9, 0xa0, 0x41, 0x3f, 0xad, 0x05, 0x17, 0x3a, 0x4d, 0xa0, 0x99, 0x29, 0x8d, 0xe4, 0xab, 0xcf,
0xe9, 0x9c, 0x5c, 0x87, 0x0e, 0x96, 0x98, 0xbe, 0x10, 0x73, 0x1c, 0x34, 0xc9, 0x50, 0x85, 0x93,
0xcb, 0x10, 0x69, 0x35, 0x68, 0x91, 0x34, 0xd2, 0x8a, 0xfd, 0xda, 0x80, 0xcb, 0x96, 0xce, 0x5b,
0xa9, 0xa7, 0xe3, 0x5c, 0x7c, 0xf8, 0x8f, 0x88, 0xfc, 0xe2, 0x79, 0xf8, 0xb4, 0xfc, 0x8b, 0x3c,
0xac, 0xaf, 0x66, 0xe5, 0xeb, 0x00, 0x5a, 0xe4, 0xcb, 0x28, 0x1b, 0x42, 0xce, 0x3a, 0x9d, 0x8d,
0xe1, 0x62, 0x35, 0x3f, 0x54, 0x33, 0x32, 0xdc, 0xe5, 0x0e, 0x05, 0x0e, 0xe3, 0xd0, 0x21, 0xfb,
0xbb, 0x01, 0x9d, 0x47, 0x39, 0x0a, 0x8d, 0xa3, 0xd2, 0x79, 0x6a, 0x78, 0x4f, 0x17, 0xb2, 0xbc,
0x02, 0xf1, 0x11, 0xa2, 0xb3, 0x64, 0x8e, 0x15, 0xef, 0x66, 0xc0, 0xfb, 0x26, 0x80, 0xac, 0xea,
0x42, 0xb9, 0xea, 0xf0, 0x40, 0x92, 0x0c, 0x60, 0x43, 0x16, 0x23, 0xca, 0x4f, 0x9b, 0x2e, 0x3d,
0x4c, 0xb6, 0xa1, 0x47, 0x69, 0x7a, 0x65, 0x23, 0xd9, 0x20, 0x42, 0xa1, 0x68, 0xad, 0x36, 0x9d,
0x53, 0xb5, 0xd9, 0x82, 0xb6, 0x39, 0x63, 0x3e, 0xe8, 0xda, 0x14, 0x58, 0xc4, 0xde, 0x41, 0x9f,
0xe3, 0xdb, 0x5c, 0x6a, 0xe4, 0xe2, 0x83, 0x8b, 0xb6, 0xac, 0xa2, 0xf5, 0xd1, 0xc7, 0x61, 0xf4,
0x58, 0x2e, 0x64, 0xee, 0xab, 0xef, 0x90, 0x8f, 0xbe, 0x55, 0x45, 0xcf, 0xee, 0xc2, 0x96, 0xcb,
0x61, 0x3d, 0x94, 0x8f, 0x73, 0xb5, 0x5c, 0x18, 0x5d, 0x5d, 0x16, 0x83, 0xc6, 0x76, 0x7c, 0xa7,
0xcb, 0xcd, 0x91, 0xdd, 0x84, 0xce, 0xeb, 0xac, 0x90, 0x93, 0x6c, 0x54, 0x9a, 0xac, 0x8d, 0x85,
0x16, 0xc4, 0xa1, 0xcf, 0xe9, 0xcc, 0x14, 0xf4, 0x5e, 0xa8, 0x87, 0x62, 0x26, 0xb2, 0xd4, 0x94,
0xe4, 0x2a, 0xb4, 0x74, 0xf9, 0x04, 0x3d, 0x4f, 0x0b, 0x4c, 0xea, 0x16, 0x62, 0x65, 0x86, 0xd2,
0x95, 0xd9, 0x43, 0xba, 0xc9, 0xe5, 0xc9, 0x7b, 0x5c, 0xb9, 0x48, 0x3c, 0xbc, 0x28, 0x1c, 0xf6,
0x33, 0x74, 0x5e, 0xc9, 0x49, 0x86, 0xe3, 0x51, 0x69, 0x74, 0x96, 0x44, 0xce, 0x51, 0x72, 0xc8,
0x10, 0x25, 0x69, 0x64, 0x89, 0x92, 0x6c, 0x0b, 0xda, 0x8b, 0xe5, 0xa1, 0x77, 0xd4, 0xe7, 0x0e,
0x51, 0x1a, 0x57, 0xe4, 0xa3, 0xc5, 0x23, 0xbd, 0x62, 0xbf, 0x45, 0xd0, 0x0b, 0xf2, 0x12, 0x94,
0xc7, 0xf9, 0xb0, 0xc8, 0xc5, 0x34, 0x53, 0x62, 0xec, 0xdc, 0x78, 0x98, 0x0c, 0xa1, 0x6b, 0x3c,
0x0a, 0xbd, 0xcc, 0x6d, 0xd3, 0xf5, 0x76, 0xaf, 0x0c, 0x69, 0xd9, 0x0d, 0x5f, 0x79, 0x39, 0xaf,
0x55, 0x7c, 0x81, 0x9a, 0x75, 0x7b, 0xd6, 0xb1, 0xdb, 0xaa, 0xf9, 0x52, 0x5e, 0x85, 0x56, 0xa6,
0xb2, 0x14, 0xa9, 0x01, 0x63, 0x6e, 0x81, 0x6b, 0x84, 0x8d, 0xaa, 0x11, 0x6e, 0x02, 0x4c, 0x4c,
0x35, 0x1f, 0xd1, 0x28, 0x74, 0x28, 0xb2, 0x40, 0x62, 0xac, 0x4f, 0x51, 0x8c, 0x5d, 0xc3, 0xf5,
0xb9, 0x43, 0x34, 0x14, 0x58, 0xea, 0x01, 0xb8, 0xa1, 0xc0, 0x52, 0xb3, 0xfb, 0xd0, 0x0f, 0x92,
0x51, 0x24, 0xb7, 0xeb, 0x06, 0xe9, 0xed, 0x26, 0x2e, 0xaa, 0x40, 0xc3, 0x36, 0xcd, 0x57, 0x70,
0x89, 0xcb, 0x6c, 0x52, 0x45, 0x9b, 0x0c, 0xa1, 0x25, 0x35, 0xce, 0xfd, 0x0f, 0x07, 0xee, 0x87,
0x6b, 0x4a, 0x4f, 0x35, 0xce, 0xb9, 0x55, 0x63, 0x4f, 0x61, 0xf3, 0xcc, 0x5d, 0x50, 0x41, 0x63,
0xa5, 0xae, 0xe0, 0x8d, 0x30, 0xdf, 0x11, 0x5d, 0xd5, 0x02, 0xf6, 0x3d, 0x74, 0x6b, 0x1e, 0xb6,
0xd8, 0x0d, 0x5f, 0xec, 0xc0, 0x64, 0xb4, 0xd6, 0x14, 0x37, 0x4e, 0x97, 0x70, 0xcd, 0xe4, 0x4f,
0xd0, 0x37, 0xcd, 0xfb, 0xdd, 0x09, 0xe6, 0x27, 0x12, 0x69, 0x33, 0xe4, 0x98, 0xca, 0x13, 0xd7,
0x23, 0x31, 0xf7, 0xd0, 0xdc, 0x1c, 0xda, 0xd9, 0x70, 0x2b, 0xc9, 0x43, 0x73, 0xa3, 0xcb, 0x47,
0xc1, 0x86, 0xf3, 0x90, 0xfd, 0xd1, 0x80, 0x0d, 0x8e, 0xc7, 0x34, 0x1e, 0x09, 0x34, 0x85, 0x99,
0x1a, 0xb7, 0x32, 0x85, 0x93, 0x1d, 0xcd, 0xc4, 0x84, 0x0c, 0xb6, 0x38, 0x9d, 0x4d, 0x63, 0xa4,
0x95, 0xad, 0x16, 0xb7, 0xc0, 0x44, 0x31, 0x96, 0x39, 0x52, 0x61, 0x5c, 0x87, 0xd7, 0x02, 0xdb,
0x06, 0x72, 0x32, 0xd5, 0xbe, 0xc9, 0x2c, 0x32, 0xb6, 0x64, 0x36, 0xc6, 0xd2, 0x37, 0x19, 0x01,
0xf6, 0x0e, 0x80, 0xe3, 0xf1, 0xcb, 0x5c, 0x9e, 0x88, 0x74, 0x55, 0xfb, 0x6b, 0x5c, 0xe8, 0x2f,
0xba, 0xd8, 0x5f, 0x1c, 0xfa, 0x63, 0xd7, 0xa0, 0xf5, 0x04, 0xcb, 0xb3, 0x0b, 0x8e, 0x2d, 0xa1,
0xc7, 0x71, 0x31, 0x5b, 0x8d, 0xca, 0xa7, 0xd9, 0x91, 0x32, 0x71, 0x4f, 0x45, 0x31, 0xf5, 0xdb,
0xc7, 0x9c, 0x03, 0x9b, 0xd1, 0xf9, 0x31, 0xc4, 0x41, 0x0c, 0xc9, 0x6d, 0x68, 0x0b, 0xfa, 0xea,
0x0d, 0x9a, 0xd4, 0x86, 0x7d, 0xd7, 0x86, 0xf4, 0x79, 0xe2, 0xee, 0x8e, 0x7d, 0x06, 0x5d, 0x8e,
0xc7, 0xa3, 0xf2, 0x99, 0x2c, 0xf4, 0x7a, 0xa0, 0xb1, 0x0b, 0x94, 0xed, 0x55, 0xcc, 0x48, 0xe9,
0xd3, 0x86, 0x62, 0x08, 0x97, 0xe9, 0x47, 0x2f, 0x73, 0xb5, 0xc0, 0xfc, 0x5b, 0x44, 0x93, 0xaf,
0x85, 0x07, 0xce, 0x41, 0x2d, 0x60, 0x1c, 0x60, 0x54, 0x3e, 0x11, 0xc5, 0x94, 0x7c, 0x98, 0x48,
0x45, 0x31, 0xc5, 0xc2, 0x37, 0xbf, 0x45, 0x35, 0xc1, 0x28, 0x20, 0x18, 0x2c, 0x90, 0x78, 0x3b,
0xae, 0x17, 0x08, 0xfb, 0xd2, 0x7c, 0x53, 0xaa, 0x94, 0x16, 0xc9, 0x3d, 0xd3, 0x85, 0x74, 0x3c,
0xc5, 0x3e, 0xd0, 0xe2, 0x5e, 0x85, 0x0d, 0x4d, 0x0f, 0xa4, 0x28, 0x17, 0xfa, 0x99, 0x9a, 0x9c,
0x99, 0xa5, 0x2b, 0x10, 0xcf, 0xd4, 0xc4, 0x0d, 0x92, 0x39, 0x32, 0x61, 0x1a, 0x99, 0xf4, 0xcf,
0x28, 0xdf, 0x82, 0xe8, 0xe0, 0x0d, 0x0d, 0x6b, 0x6f, 0xf7, 0x7f, 0xce, 0xe7, 0x01, 0xae, 0xde,
0x88, 0xd9, 0x12, 0x79, 0x74, 0xf0, 0x26, 0xf9, 0x1c, 0x9a, 0x33, 0x35, 0x29, 0x88, 0x7f, 0x6f,
0x77, 0xb3, 0xa2, 0xe5, 0xdd, 0x73, 0xba, 0x66, 0xfb, 0xa6, 0x12, 0x24, 0xdb, 0x17, 0x5a, 0x9c,
0x71, 0xf3, 0x89, 0x56, 0xfe, 0x6a, 0x40, 0x67, 0x54, 0x72, 0x2c, 0x96, 0x33, 0x1d, 0xf4, 0x54,
0xe3, 0xfc, 0x9e, 0xb2, 0x9d, 0xed, 0x7a, 0x8a, 0x51, 0xd3, 0xda, 0x2d, 0x7f, 0x5e, 0xe9, 0xcd,
0x97, 0xfa, 0x3e, 0xf4, 0x72, 0xeb, 0x72, 0x2c, 0xdc, 0xa3, 0x23, 0xcc, 0x74, 0x45, 0x9f, 0x87,
0x6a, 0xa6, 0x3b, 0x0e, 0x67, 0x2a, 0x7d, 0xaf, 0xe5, 0xdc, 0x7f, 0x07, 0x6a, 0x81, 0x59, 0xf2,
0xd6, 0x03, 0xbd, 0x29, 0xda, 0x34, 0x34, 0x81, 0x84, 0xfd, 0x19, 0xc1, 0x66, 0xc0, 0x63, 0x1f,
0xb5, 0x90, 0x33, 0xc7, 0xb6, 0xf1, 0x51, 0xb6, 0xf7, 0x68, 0x9b, 0x19, 0x1a, 0x14, 0xe9, 0xf9,
0x4c, 0xbd, 0x0a, 0x6d, 0xd0, 0x5c, 0xa9, 0x23, 0x9b, 0x63, 0xb3, 0x41, 0x09, 0x05, 0x59, 0x6c,
0x9e, 0x9f, 0xc5, 0x56, 0x38, 0x99, 0x6b, 0xb1, 0xb6, 0x4f, 0xc7, 0x5a, 0xbf, 0xeb, 0x36, 0xd6,
0xde, 0x75, 0xd7, 0xa1, 0x73, 0x94, 0xab, 0x39, 0x6d, 0x48, 0xf7, 0xaa, 0xf2, 0xf8, 0x54, 0x7e,
0xba, 0xa7, 0xf3, 0x13, 0xec, 0x02, 0xf8, 0xc8, 0x2e, 0xf8, 0x1a, 0x92, 0x33, 0x49, 0x2c, 0x92,
0xbb, 0xe1, 0xbc, 0x0f, 0xce, 0xa6, 0xd1, 0xea, 0xd9, 0xa9, 0xdf, 0x86, 0x8e, 0x5b, 0xe6, 0x34,
0xab, 0x86, 0x9b, 0x7f, 0x5f, 0x59, 0xc0, 0x76, 0xe0, 0x1a, 0xc7, 0xe3, 0x7d, 0x4c, 0xd5, 0x98,
0x5e, 0x7a, 0xc1, 0xdb, 0xe3, 0xdc, 0xd7, 0x14, 0xfb, 0x02, 0xba, 0xaf, 0x0b, 0xcc, 0xe9, 0x69,
0x48, 0x2a, 0x6a, 0x21, 0xd3, 0x4a, 0xc5, 0x00, 0xf3, 0x75, 0x49, 0x55, 0xa6, 0xd1, 0xed, 0x85,
0x2e, 0xf7, 0x90, 0xfd, 0x08, 0xbd, 0xd7, 0x8b, 0x49, 0x2e, 0xc6, 0xf8, 0x1c, 0xb5, 0x30, 0x29,
0xa4, 0x0a, 0xc8, 0x6c, 0x42, 0x16, 0x3a, 0xbc, 0xc2, 0xc6, 0xc8, 0x09, 0xe6, 0x85, 0x5f, 0xe6,
0x5d, 0xee, 0xe1, 0x45, 0xab, 0xfc, 0xe1, 0xad, 0x1f, 0xfe, 0x3f, 0x91, 0x7a, 0xba, 0x3c, 0x1c,
0xa6, 0x6a, 0xbe, 0xb3, 0xb7, 0x97, 0x66, 0x3b, 0xe9, 0x54, 0xc8, 0x6c, 0x6f, 0x6f, 0x87, 0x92,
0x74, 0xd8, 0xa6, 0x7f, 0x79, 0x7b, 0xff, 0x04, 0x00, 0x00, 0xff, 0xff, 0xf0, 0xd8, 0xd1, 0xa5,
0x0f, 0x0e, 0x00, 0x00,
// 1320 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x57, 0xcf, 0x6e, 0x1b, 0xb7,
0x13, 0x86, 0xb4, 0x5a, 0x59, 0x1a, 0x29, 0xf9, 0xc5, 0x8b, 0x20, 0x11, 0x82, 0x5f, 0x13, 0x97,
0x48, 0x81, 0x20, 0x08, 0x64, 0xc0, 0xce, 0xad, 0x05, 0xda, 0x24, 0x6e, 0x93, 0xc0, 0x49, 0x9a,
0x32, 0xca, 0x1f, 0xb4, 0xbd, 0xd0, 0xab, 0xb1, 0xb4, 0x8d, 0xb4, 0x94, 0xb9, 0x94, 0xb3, 0x7a,
0x81, 0x5e, 0xda, 0x5b, 0x1f, 0xa9, 0x2f, 0xd0, 0xc7, 0xe8, 0x63, 0x14, 0x1c, 0x92, 0xbb, 0xb4,
0x25, 0x07, 0x39, 0x14, 0xe8, 0x8d, 0x1f, 0x39, 0x9a, 0xf9, 0x66, 0xe6, 0xe3, 0x2c, 0x05, 0xdb,
0x5a, 0x89, 0xbc, 0x10, 0xa9, 0xce, 0x64, 0x3e, 0x5c, 0x28, 0xa9, 0x65, 0x12, 0xeb, 0xd5, 0x02,
0x8b, 0x1b, 0xfd, 0x54, 0xce, 0xe7, 0x7e, 0x93, 0x3d, 0x87, 0x4b, 0x0f, 0x8a, 0x02, 0x75, 0xf1,
0x18, 0x73, 0x2c, 0xb2, 0x22, 0xb9, 0x06, 0x6d, 0x31, 0x97, 0xcb, 0x5c, 0x0f, 0x9a, 0x3b, 0x8d,
0x3b, 0x11, 0x77, 0x28, 0xb9, 0x0d, 0x97, 0x14, 0xea, 0xa5, 0xca, 0x1f, 0x8c, 0xc7, 0x0a, 0x8b,
0x62, 0x10, 0xed, 0x34, 0xee, 0x74, 0xf9, 0xd9, 0x4d, 0xf6, 0x7b, 0x03, 0xae, 0x5a, 0x7f, 0x23,
0x13, 0xff, 0x18, 0xd5, 0x48, 0x7e, 0x5b, 0x62, 0x9a, 0xfc, 0x1f, 0xba, 0xa9, 0xcc, 0x72, 0x2d,
0xdf, 0x63, 0x3e, 0x68, 0xd0, 0x4f, 0xeb, 0x8d, 0x0b, 0x83, 0x26, 0xd0, 0xca, 0xa5, 0x46, 0x8a,
0xd5, 0xe7, 0xb4, 0x4e, 0x6e, 0x40, 0x07, 0x4b, 0x4c, 0x5f, 0x88, 0x39, 0x0e, 0x5a, 0xe4, 0xa8,
0xc2, 0xc9, 0x65, 0x68, 0x6a, 0x39, 0x88, 0x69, 0xb7, 0xa9, 0x25, 0xfb, 0xb5, 0x01, 0x97, 0x2d,
0x9d, 0xb7, 0x99, 0x9e, 0x8e, 0x95, 0xf8, 0xf0, 0x1f, 0x11, 0xf9, 0xc5, 0xf3, 0xf0, 0x65, 0xf9,
0x17, 0x79, 0xd8, 0x58, 0xad, 0x2a, 0xd6, 0x21, 0xc4, 0x14, 0xcb, 0x18, 0x1b, 0x42, 0xce, 0x3b,
0xad, 0x8d, 0xe3, 0x62, 0x35, 0x3f, 0x92, 0x33, 0x72, 0xdc, 0xe5, 0x0e, 0x05, 0x01, 0xa3, 0x30,
0x20, 0xfb, 0xbb, 0x01, 0x9d, 0x47, 0x0a, 0x85, 0xc6, 0x51, 0xe9, 0x22, 0x35, 0x7c, 0xa4, 0x0b,
0x59, 0x5e, 0x81, 0xe8, 0x18, 0xd1, 0x79, 0x32, 0xcb, 0x8a, 0x77, 0x2b, 0xe0, 0x7d, 0x13, 0x20,
0xab, 0xfa, 0x42, 0xb5, 0xea, 0xf0, 0x60, 0x27, 0x19, 0xc0, 0x56, 0x56, 0x8c, 0xa8, 0x3e, 0x6d,
0x3a, 0xf4, 0x30, 0xd9, 0x81, 0x1e, 0x95, 0xe9, 0x95, 0xcd, 0x64, 0x8b, 0x08, 0x85, 0x5b, 0x67,
0x7a, 0xd3, 0x39, 0xd7, 0x9b, 0x6b, 0xd0, 0x36, 0x6b, 0x54, 0x83, 0xae, 0x2d, 0x81, 0x45, 0xec,
0x1d, 0xf4, 0x39, 0xbe, 0x55, 0x99, 0x46, 0x2e, 0x3e, 0xb8, 0x6c, 0xcb, 0x2a, 0x5b, 0x9f, 0x7d,
0x14, 0x66, 0x8f, 0xe5, 0x22, 0x53, 0xbe, 0xfb, 0x0e, 0xf9, 0xec, 0xe3, 0x2a, 0x7b, 0x76, 0x17,
0xae, 0xb9, 0x1a, 0xd6, 0x97, 0xf2, 0xb1, 0x92, 0xcb, 0x85, 0xb1, 0xd5, 0x65, 0x31, 0x68, 0xec,
0x44, 0x77, 0xba, 0xdc, 0x2c, 0xd9, 0x4d, 0xe8, 0xbc, 0xce, 0x8b, 0x6c, 0x92, 0x8f, 0x4a, 0x53,
0xb5, 0xb1, 0xd0, 0x82, 0x38, 0xf4, 0x39, 0xad, 0x99, 0x84, 0xde, 0x0b, 0xf9, 0x50, 0xcc, 0x44,
0x9e, 0x9a, 0x96, 0x5c, 0x85, 0x58, 0x97, 0x4f, 0xd0, 0xf3, 0xb4, 0xc0, 0x94, 0x6e, 0x21, 0x56,
0xe6, 0x52, 0xba, 0x36, 0x7b, 0x48, 0x27, 0x2a, 0x3b, 0x7d, 0x8f, 0x2b, 0x97, 0x89, 0x87, 0x17,
0xa5, 0xc3, 0x7e, 0x6b, 0x42, 0x2f, 0xe0, 0x1d, 0x94, 0xcf, 0xd2, 0x72, 0xc8, 0xc5, 0x9c, 0x49,
0x31, 0xa6, 0x98, 0x7d, 0xee, 0x61, 0x32, 0x84, 0xae, 0x49, 0x48, 0xe8, 0xa5, 0xb2, 0xa2, 0xe8,
0xed, 0x5d, 0x19, 0xd2, 0x30, 0x1a, 0xbe, 0xf2, 0xfb, 0xbc, 0x36, 0xf1, 0x05, 0x6c, 0xd5, 0xf2,
0xa9, 0xb9, 0xd9, 0xaa, 0xfa, 0x52, 0x5f, 0x85, 0x38, 0x97, 0x79, 0x8a, 0x24, 0x90, 0x88, 0x5b,
0xe0, 0x1a, 0xb5, 0x55, 0x35, 0xea, 0x26, 0xc0, 0xc4, 0x54, 0xfb, 0x11, 0x49, 0xd5, 0xc8, 0x21,
0xe6, 0xc1, 0x8e, 0xf1, 0x3e, 0x45, 0x31, 0x76, 0x82, 0xe8, 0x73, 0x87, 0x48, 0xb4, 0x58, 0xea,
0x01, 0x38, 0xd1, 0x62, 0xa9, 0xd9, 0x7d, 0xe8, 0x07, 0xc5, 0x28, 0x92, 0xdb, 0x75, 0x03, 0x7b,
0x7b, 0x89, 0xcb, 0x2a, 0xb0, 0xb0, 0x4d, 0xfd, 0x1a, 0x2e, 0xf1, 0x2c, 0x9f, 0x54, 0xd9, 0x26,
0x43, 0x88, 0x33, 0x8d, 0x73, 0xff, 0xc3, 0x81, 0xfb, 0xe1, 0x19, 0xa3, 0xa7, 0x1a, 0xe7, 0xdc,
0x9a, 0xb1, 0xa7, 0xb0, 0xbd, 0x76, 0x66, 0x78, 0x2f, 0x96, 0x47, 0xa6, 0x95, 0xc6, 0x4b, 0x9f,
0x3b, 0x64, 0x46, 0x4b, 0x5d, 0xef, 0x26, 0x1d, 0xd5, 0x1b, 0xec, 0x07, 0xe8, 0xd6, 0x3c, 0x4c,
0xa9, 0x56, 0xd4, 0xc8, 0x98, 0x37, 0xf5, 0x2a, 0x70, 0x69, 0x7b, 0xb8, 0xd1, 0xa5, 0x1d, 0x3e,
0x81, 0xcb, 0x9f, 0xa1, 0x6f, 0xc4, 0xf5, 0xfd, 0x29, 0xaa, 0xd3, 0x0c, 0xe9, 0xe6, 0x2a, 0x4c,
0xb3, 0x53, 0xa7, 0x91, 0x88, 0x7b, 0x68, 0x4e, 0x8e, 0xac, 0x76, 0xdd, 0xc8, 0xf0, 0xd0, 0x9c,
0xe8, 0xf2, 0x51, 0x30, 0x81, 0x3c, 0x64, 0x7f, 0x34, 0x60, 0x8b, 0xe3, 0x09, 0xc9, 0x37, 0x81,
0x96, 0x30, 0xaa, 0x76, 0x23, 0x4d, 0xb8, 0xbd, 0xe3, 0x99, 0x98, 0x90, 0xc3, 0x98, 0xd3, 0xda,
0x08, 0x23, 0xad, 0x7c, 0xc5, 0xdc, 0x02, 0x93, 0xc5, 0x38, 0x53, 0x48, 0x8d, 0x21, 0x79, 0xc5,
0xbc, 0xde, 0xb0, 0x32, 0xc8, 0x26, 0x53, 0xed, 0x45, 0x66, 0x91, 0xf1, 0x95, 0xe5, 0x63, 0x2c,
0xbd, 0xc8, 0x08, 0xb0, 0x77, 0x00, 0x1c, 0x4f, 0x5e, 0xaa, 0xec, 0x54, 0xa4, 0xab, 0x3a, 0x5e,
0xe3, 0xc2, 0x78, 0xcd, 0x8b, 0xe3, 0x45, 0x61, 0x3c, 0x76, 0x1d, 0xe2, 0x27, 0x58, 0xae, 0x0f,
0x20, 0xb6, 0x84, 0x1e, 0xc7, 0xc5, 0x6c, 0x35, 0x2a, 0x9f, 0xe6, 0xc7, 0xd2, 0xe4, 0x3d, 0x15,
0xc5, 0xd4, 0x4f, 0x07, 0xb3, 0x0e, 0x7c, 0x36, 0x37, 0xe7, 0x10, 0x05, 0x39, 0x24, 0xb7, 0xa1,
0x2d, 0xe8, 0xab, 0x34, 0x68, 0x91, 0x0c, 0xfb, 0x4e, 0x86, 0xf4, 0xf9, 0xe0, 0xee, 0x8c, 0x7d,
0x0e, 0x5d, 0x8e, 0x27, 0xa3, 0xf2, 0x59, 0x56, 0xe8, 0xb3, 0x89, 0x46, 0x2e, 0x51, 0xb6, 0x5f,
0x31, 0x23, 0xa3, 0x4f, 0xbb, 0x14, 0x43, 0xb8, 0x4c, 0x3f, 0x7a, 0xa9, 0xe4, 0x02, 0xd5, 0x77,
0x88, 0xa6, 0x5e, 0x0b, 0x0f, 0x5c, 0x80, 0x7a, 0x83, 0x71, 0x80, 0x51, 0xf9, 0x44, 0x14, 0x53,
0x8a, 0x61, 0x32, 0x15, 0xc5, 0x14, 0x0b, 0x2f, 0x7e, 0x8b, 0x6a, 0x82, 0xcd, 0x80, 0x60, 0x30,
0x40, 0xa2, 0x9d, 0xa8, 0x1e, 0x20, 0xec, 0x2b, 0x33, 0xf3, 0xab, 0x92, 0x16, 0xc9, 0x3d, 0xa3,
0x42, 0x5a, 0x9e, 0x63, 0x1f, 0x58, 0x71, 0x6f, 0xc2, 0x86, 0x46, 0x03, 0x29, 0x66, 0x0b, 0xfd,
0x4c, 0x4e, 0xd6, 0xee, 0xd2, 0x15, 0x88, 0x66, 0x72, 0xe2, 0x2e, 0x92, 0x59, 0x32, 0x61, 0x84,
0x4c, 0xf6, 0x6b, 0xc6, 0xb7, 0xa0, 0x79, 0xf8, 0x86, 0x2e, 0x6b, 0x6f, 0xef, 0x7f, 0x2e, 0xe6,
0x21, 0xae, 0xde, 0x88, 0xd9, 0x12, 0x79, 0xf3, 0xf0, 0x4d, 0xf2, 0x05, 0xb4, 0x66, 0x72, 0x52,
0x10, 0xff, 0xde, 0xde, 0x76, 0x45, 0xcb, 0x87, 0xe7, 0x74, 0xcc, 0x0e, 0x4c, 0x27, 0x68, 0xef,
0x40, 0x68, 0xb1, 0x16, 0xe6, 0x13, 0xbd, 0xfc, 0xd5, 0x80, 0xce, 0xa8, 0xe4, 0x58, 0x2c, 0x67,
0x3a, 0xd0, 0x54, 0x63, 0xb3, 0xa6, 0xac, 0xb2, 0x9d, 0xa6, 0x18, 0x89, 0xd6, 0x4e, 0xf9, 0x4d,
0xad, 0x37, 0x5f, 0xd2, 0xfb, 0xd0, 0x53, 0x36, 0xe4, 0x58, 0xb8, 0x47, 0x41, 0x58, 0xe9, 0x8a,
0x3e, 0x0f, 0xcd, 0x8c, 0x3a, 0x8e, 0x66, 0x32, 0x7d, 0xaf, 0xb3, 0xb9, 0xff, 0x0e, 0xd4, 0x1b,
0x66, 0xc8, 0xdb, 0x08, 0xf4, 0xcd, 0x6f, 0xd3, 0xa5, 0x09, 0x76, 0xd8, 0x9f, 0x4d, 0xd8, 0x0e,
0x78, 0x1c, 0xa0, 0x16, 0xd9, 0xcc, 0xb1, 0x6d, 0x7c, 0x94, 0xed, 0x3d, 0x9a, 0x66, 0x86, 0x06,
0x65, 0xba, 0x99, 0xa9, 0x37, 0xa1, 0x09, 0xaa, 0xa4, 0x3c, 0xb6, 0x35, 0x36, 0x13, 0x94, 0x50,
0x50, 0xc5, 0xd6, 0xe6, 0x2a, 0xc6, 0xe1, 0xcd, 0x3c, 0x93, 0x6b, 0xfb, 0x7c, 0xae, 0xf5, 0xbb,
0x6b, 0xeb, 0xcc, 0xbb, 0xeb, 0x06, 0x74, 0x8e, 0x95, 0x9c, 0xd3, 0x84, 0x74, 0xaf, 0x1e, 0x8f,
0xcf, 0xd5, 0xa7, 0x7b, 0xbe, 0x3e, 0xc1, 0x2c, 0x80, 0x8f, 0xcc, 0x82, 0x6f, 0x20, 0x59, 0x2b,
0x62, 0x91, 0xdc, 0x0d, 0xef, 0xfb, 0x60, 0xbd, 0x8c, 0xd6, 0xce, 0xde, 0xfa, 0x1d, 0xe8, 0xb8,
0x61, 0x4e, 0x77, 0xd5, 0x70, 0xf3, 0xef, 0x1f, 0x0b, 0xd8, 0x2e, 0x5c, 0xe7, 0x78, 0x72, 0x80,
0xa9, 0x1c, 0xd3, 0x4b, 0x2c, 0x78, 0x7b, 0x6c, 0x7c, 0xed, 0xb0, 0x2f, 0xa1, 0xfb, 0xba, 0x40,
0x45, 0x4f, 0x37, 0x32, 0x91, 0x8b, 0x2c, 0xad, 0x4c, 0x0c, 0x30, 0x5f, 0x97, 0x54, 0xe6, 0x1a,
0xdd, 0x5c, 0xe8, 0x72, 0x0f, 0xd9, 0x4f, 0xd0, 0x7b, 0xbd, 0x98, 0x28, 0x31, 0xc6, 0xe7, 0xa8,
0x85, 0x29, 0x61, 0xa1, 0x85, 0xd2, 0x59, 0x3e, 0x21, 0x0f, 0x1d, 0x5e, 0x61, 0xe3, 0xe4, 0x14,
0x55, 0xe1, 0x87, 0x79, 0x97, 0x7b, 0x78, 0xd1, 0x28, 0x7f, 0x78, 0xeb, 0xc7, 0xcf, 0x26, 0x99,
0x9e, 0x2e, 0x8f, 0x86, 0xa9, 0x9c, 0xef, 0xee, 0xef, 0xa7, 0xf9, 0x6e, 0x3a, 0x15, 0x59, 0xbe,
0xbf, 0xbf, 0x4b, 0x45, 0x3a, 0x6a, 0xd3, 0xbf, 0xb0, 0xfd, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff,
0xba, 0x68, 0x0f, 0x9b, 0xaf, 0x0d, 0x00, 0x00,
}
......@@ -134,6 +134,7 @@ func RunChain33(name string) {
//开始区块链模块加载
//channel, rabitmq 等
version.SetLocalDBVersion(cfg.Store.LocalDBVersion)
version.SetStoreDBVersion(cfg.Store.StoreDBVersion)
version.SetAppVersion(cfg.Version)
log.Info(cfg.Title + "-app:" + version.GetAppVersion() + " chain33:" + version.GetVersion() + " localdb:" + version.GetLocalDBVersion())
log.Info("loading queue")
......@@ -155,12 +156,13 @@ func RunChain33(name string) {
log.Info("loading blockchain module")
chain := blockchain.New(cfg.BlockChain)
chain.SetQueueClient(q.Client())
chain.UpgradeChain()
log.Info("loading store module")
s := store.New(cfg.Store, sub.Store)
s.SetQueueClient(q.Client())
chain.Upgrade()
log.Info("loading consensus module")
cs := consensus.New(cfg.Consensus, sub.Consensus)
cs.SetQueueClient(q.Client())
......
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