Commit 0df097c6 authored by harrylee's avatar harrylee

update broker

parent dd7fbd8c
Pipeline #8231 failed with stages
in 0 seconds
......@@ -58,7 +58,19 @@ func (b *BrokerDB) initBroker(payload *brokertypes.Init) (*types.Receipt, error)
if b.fromaddr != getManagerAddr(b.api.GetConfig(), b.db, brokerAdmin, DefaultManagerAddr) {
return nil, fmt.Errorf("the addr %s is not admin", b.fromaddr)
}
meta := &brokertypes.Meta{
Meta: make(map[string]uint64),
XXX_NoUnkeyedLiteral: struct{}{},
XXX_unrecognized: nil,
XXX_sizecache: 0,
}
var kvsets []*types.KeyValue
kvsets = append(kvsets,&types.KeyValue{Key: calOutterMetaKey(), Value: types.Encode(meta)})
kvsets = append(kvsets,&types.KeyValue{Key: calInnerMetaKey(), Value: types.Encode(meta)})
kvsets = append(kvsets,&types.KeyValue{Key: calCallBackMetaKey(), Value: types.Encode(meta)})
kvsets = append(kvsets,&types.KeyValue{Key: calDstRollBackMetaKey(), Value: types.Encode(meta)})
receipt := &types.Receipt{Ty: types.ExecOk}
receipt.KV = append(receipt.KV,kvsets...)
receipt.KV = append(receipt.KV, &types.KeyValue{Key: BxhIDKey(), Value: types.Encode(payload)})
receipt.Ty = brokertypes.TyInitLog
return receipt, nil
......@@ -82,12 +94,7 @@ func (b *BrokerDB) updateIndex(payload *brokertypes.UpdateIndex) (*types.Receipt
if payload.ReqType == brokertypes.Req_Inner {
meta, err := getMeta(b.db, calInnerMetaKey())
if err != nil {
meta = &brokertypes.Meta{
Meta: make(map[string]uint64),
XXX_NoUnkeyedLiteral: struct{}{},
XXX_unrecognized: nil,
XXX_sizecache: 0,
}
return nil,fmt.Errorf("broker not init!")
}
idx := meta.Meta[genServicePair(payload.SrcServiceID, payload.DstServiceID)]
if payload.SequenceNum != idx+1 {
......@@ -101,12 +108,7 @@ func (b *BrokerDB) updateIndex(payload *brokertypes.UpdateIndex) (*types.Receipt
} else if payload.ReqType == brokertypes.Req_Callback {
meta, err := getMeta(b.db, calCallBackMetaKey())
if err != nil {
meta = &brokertypes.Meta{
Meta: make(map[string]uint64),
XXX_NoUnkeyedLiteral: struct{}{},
XXX_unrecognized: nil,
XXX_sizecache: 0,
}
return nil,fmt.Errorf("broker not init!")
}
idx := meta.Meta[genServicePair(payload.SrcServiceID, payload.DstServiceID)]
if payload.SequenceNum != idx+1 {
......@@ -120,12 +122,7 @@ func (b *BrokerDB) updateIndex(payload *brokertypes.UpdateIndex) (*types.Receipt
//todo
meta, err := getMeta(b.db, calDstRollBackMetaKey())
if err != nil {
meta = &brokertypes.Meta{
Meta: make(map[string]uint64),
XXX_NoUnkeyedLiteral: struct{}{},
XXX_unrecognized: nil,
XXX_sizecache: 0,
}
return nil,fmt.Errorf("broker not init!")
}
idx := meta.Meta[genServicePair(payload.SrcServiceID, payload.DstServiceID)]
if payload.SequenceNum < idx+1 {
......@@ -154,12 +151,7 @@ func (b *BrokerDB) emitInterchainEvent(payload *brokertypes.InterchainEvent) (*t
}
meta, err := getMeta(b.db, calOutterMetaKey())
if err != nil {
meta = &brokertypes.Meta{
Meta: make(map[string]uint64),
XXX_NoUnkeyedLiteral: struct{}{},
XXX_unrecognized: nil,
XXX_sizecache: 0,
}
return nil,fmt.Errorf("broker not init!")
}
currServiceID, err := b.getCurrServiceID()
if err != nil {
......@@ -187,7 +179,7 @@ func (b *BrokerDB) emitInterchainEvent(payload *brokertypes.InterchainEvent) (*t
//获取当前链得ID
func (b *BrokerDB) getCurrServiceID() (string, error) {
return b.genFullServiceID(b.api.GetConfig().GetTitle())
return b.genFullServiceID(b.api.GetConfig().GetTitle() + delimiter + "broker")
}
func (b *BrokerDB) genFullServiceID(serviceId string) (string, error) {
......@@ -233,7 +225,7 @@ func getEvent(statedb dbm.KV, key []byte) (*brokertypes.InterchainEvent, error)
func getMeta(statedb dbm.KV, key []byte) (*brokertypes.Meta, error) {
data, err := statedb.Get(key)
if err != nil {
elog.Error("getMeta", "not found", "key:", key)
elog.Error("getMeta", "not found", "key:", string(key))
return nil, err
}
var meta brokertypes.Meta
......
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