Commit d4d62938 authored by duanjinfei's avatar duanjinfei

change ring BroadcastLegacyEthTxsWithFromRequest

parent 000e169e
......@@ -8,7 +8,6 @@ import (
ring "github.com/CaduceusMetaverseProtocol/MetaProtocol/gen/proto/go/ring/v1"
metatypes "github.com/CaduceusMetaverseProtocol/MetaTypes/types"
"github.com/ethereum/go-ethereum/core/types"
gogotypes "github.com/gogo/protobuf/types"
"google.golang.org/grpc"
"google.golang.org/grpc/credentials/insecure"
"sync/atomic"
......@@ -17,11 +16,11 @@ import (
var (
bathHandleSendCount, allSignedTxCount, totalSendTime, beforeBathHandleSendCount int64
broadcastEthTxWithFromRequestsArr chan *ring.BroadcastEthTxWithFromRequests
broadcastEthTxWithFromRequestsArr chan *ring.BroadcastLegacyEthTxsWithFromRequest
)
func init() {
broadcastEthTxWithFromRequestsArr = make(chan *ring.BroadcastEthTxWithFromRequests, 1000000)
broadcastEthTxWithFromRequestsArr = make(chan *ring.BroadcastLegacyEthTxsWithFromRequest, 1000000)
}
func InitBroadcastTxGoroutine(cfg *tool.Config) error {
......@@ -40,24 +39,20 @@ func BroadcastTxArr(tranArr []*TxFromTran, cfg *tool.Config) error {
allSignedTxCount = int64(len(tranArr))
log.Info("allSignedTxCount:", allSignedTxCount)
//startTime := time.Now()
ethTxArr := make([]*ring.BroadcastEthTxWithFromRequest, 0)
ethTxArr := make([]*ring.BroadcastLegacyEthTxWithFromRequest, 0)
for i := 0; i < int(allSignedTxCount); i++ {
inner := constructionEthLegacyTx(tranArr[i].Tran)
ethTxAsAny, err := gogotypes.MarshalAny(&inner)
if err != nil {
log.Error("gogo types.MarshalAny error:", err)
request := &ring.BroadcastLegacyEthTxWithFromRequest{
From: tranArr[i].From,
LegacyTx: &inner,
}
request := ring.BroadcastEthTxWithFromRequest{
From: tranArr[i].From,
EthTx: &v1.EthTransaction{Tx: ethTxAsAny},
}
ethTxArr = append(ethTxArr, &request)
ethTxArr = append(ethTxArr, request)
if len(ethTxArr) == cfg.BatchCount {
requests := ring.BroadcastEthTxWithFromRequests{
res := &ring.BroadcastLegacyEthTxsWithFromRequest{
List: ethTxArr,
}
broadcastEthTxWithFromRequestsArr <- &requests
ethTxArr = make([]*ring.BroadcastEthTxWithFromRequest, 0)
broadcastEthTxWithFromRequestsArr <- res
ethTxArr = make([]*ring.BroadcastLegacyEthTxWithFromRequest, 0)
}
}
//for {
......@@ -83,7 +78,7 @@ func broadcastTx(cfg *tool.Config, client ring.RingServiceClient) error {
ctx, cancel := context.WithTimeout(context.Background(), time.Second*30)
defer cancel()
atomic.AddInt64(&beforeBathHandleSendCount, int64(len(broadcastEthTxWithFromRequests.List)))
_, err := client.BroadcastTxs(ctx, broadcastEthTxWithFromRequests)
_, err := client.BroadcastLegacyTxs(ctx, broadcastEthTxWithFromRequests)
if err != nil {
log.Error("BroadcastTxs Error:", err)
}
......
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